Presentation is loading. Please wait.

Presentation is loading. Please wait.

2015/8/221 Data Types & Operators Lecture from (Chapter 3,4)

Similar presentations


Presentation on theme: "2015/8/221 Data Types & Operators Lecture from (Chapter 3,4)"— Presentation transcript:

1 2015/8/221 Data Types & Operators Lecture from (Chapter 3,4)

2 2015/8/22 2 Review An introduction to Object-oriented programming Arithmetic Operators Bitwise operators Relational Operators Boolean Logical Operator Assignment Operator

3 2015/8/22 3 An introduction to Object Oriented Programming - http://java.sun.com/docs/books/tutorial/java/concepts/ Object-oriented Programming is the core of Java. All java programms are object-oriented. We need to understand what an object is, what a class is, how objects and classes are related, and how objects communicate by using messages.

4 2015/8/22 4 An overview of Object-oriented programming (1) An object: An object is a software bundle of related variables and methods. Software objects are often used to model real-world objects you find in everyday life. Messages: Software objects interact and communicate with each other using messages. Class: A class is a prototype that defines the variables and the methods common to all objects of a certain kind.

5 2015/8/22 5 An overview of Object-oriented programming (2) An inherientence: A class inherits state and behavior from its superclass. Inheritance provides a powerful and natural mechanism for organizing and structuring software programs. An Interface: An interface is a contract in the form of a collection of method and constant declarations. When a class implements an interface, it promises to implement all of the methods declared in that interface.

6 2015/8/22 6 An object - We will introduce them one by one per week to build up your understanding There are many examples of real-world objects. For example, our book, cat, pet etc. These real-world objects share two characteristics, namely, : state and behavior. For example, cats have state (color, hungry) and behavior (running, eating, sleeping). Software objects are modeled following the real-world objects in that they too have state and behavior.  A software object maintains its state in one or more variables.variables  A variable is an item of data named by an identifier.  A software object implements its behavior with methods. A method is a function (subroutine) associated with an object.methods

7 7 Java Data Types Primitive Data Types:  boolean true or false  char unicode! (16 bits)  byte signed 8 bit integer  short signed 16 bit integer  int signed 32 bit integer  long signed 64 bit integer  float, double IEEE 754 floating point not an int!

8 2015/8/22 8 Arithmetic Operator – page 74 OperatorDescription +addition - Subtraction *Multiplication / Division % Modules ++Increment -- Decrement

9 2015/8/22 9 Example – addition and subtraction

10 2015/8/22 10 Example – multiplication and division

11 2015/8/22 11 Special operator ExpressionEquivalent expression a = a + 2;a +=2; a = a – 4;a -= 4; a = a*3; a *= 3; a = a/4;a /=4; a = a%2;a %=2;

12 2015/8/22 12 Example of special operator

13 2015/8/22 13 Increment and Decrement ExpressionEquivalent expression a = a + 1;++a; a = a – 1;--a;

14 2015/8/22 14 Bitwise Operators – page 81 OperatorDescription ~Bitwise unary NOT & Bitwise AND | Bitwise OR ^ Bitwise exclusive OR >> Shift Right << Shift LEFT >>>Shift Right with zero fill

15 2015/8/22 15 Operation - examples OperatorExpression AND 1 & 1 = 1; 1& 0 = 0 OR 1 |1 = 1; 1| 0 = 1; 0|0 = 0 ~ 0 =~1; 1 =~0; ^ 0^ 0 = 0; 1^1 = 0; 1^0 =1; 0^1 = 1 >> 0x0010 = 0x0001 >>1 << 0x0001 = 0x0010 <<1 >>> 0x1001 = 0x0100 >>>1

16 2015/8/22 16 AND Example – bits, 0x (hexadecimal) 1111 0010 (0xf2) 1111 1110 (0xfe) ---------------- (and) & 1111 0010 (0xf2) byte c = 0xf2; byte d = 0xfe; byte e = c & d; //e is 0xf2

17 2015/8/22 17 OR Example 1111 0010 (0xf2) 1111 1110 (0xfe) --------------(or) | 1111 1110 (0xfe) Example byte c = 0xf2; byte d = 0xfe; byte e = c | d; //e is 0xfe

18 2015/8/22 18 One ’ s complement 1111 0010 (0xf2) -------------- ~ 0000 1101 (0x0d) Example byte c = 0xf2; byte e = ~c; //e is 0x0d

19 2015/8/22 19 EXCLUSIVE OR 1111 0010 (0xf2) 1111 1110 (0xfe) -------------- (^) 0000 1100 (0x0c) Example byte c = 0xf2; byte d = 0xfe; byte e = c ^ d; //e is 0x0c

20 2015/8/22 20 Example

21 2015/8/22 21 Relational Operators OperatorDescription ==Equal to != Not equal to >Greater than < Less than >= Grater than or equal to <= Less than or equal to

22 2015/8/22 22 Example int a = 3; int b = 4; boolean c = (a>b); //c is false boolean d = (a<b); //c is true boolean e = (a==b); //c is false boolean d = (a>=b); //c is false

23 2015/8/22 23 Example

24 2015/8/22 24 SHIFT >> (right) by one bit 1111 0010 (0xf2) >> 1 (shift right by one bit) --------------------- 0111 0001 (0x79) Example byte c = 0xf2; byte e = c >>1; //e is 0x79

25 2015/8/22 25 SHIFT >> by two bits 1111 0010 (0xf2) >> 2 (shift right by one bit) --------------------- 0011 1100 (0x3c) Example byte c = 0xf2; byte e = c >>2; //e is 0x3c

26 2015/8/22 26 SHIFT << (left) by one bit 1111 0010 (0xf2) << 1 (shift right by one bit) --------------------- 1110 0100 (0xe4) Example byte c = 0xf2; byte e = c <<1; //e is 0xe4

27 2015/8/22 27 SHIFT << by two bits 1111 0010 (0xf2) >> 2 (shift right by one bit) --------------------- 1100 1000 (0xc8) Example byte c = 0xf2; byte e = c <<2; //e is 0xc8

28 2015/8/22 28 Results or bit operation (example) ( 1 | 2) == 3 (1 | 3) == 3 (1 & 2) == 0 (1 & 3) == 1 (0 ^ 3) == 3 (1 ^ 3) == 2 (3 ^ 3) == 0 ~0 == -1 (signed) or 255 (unsigned)

29 2015/8/22 29 Example of shift

30 2015/8/22 30 Relational Operators OperatorDescription ==Equal to != Not equal to >Greater than < Less than >= Grater than or equal to <= Less than or equal to

31 2015/8/22 31 Example int a = 3; int b = 4; boolean c = (a>b); //c is false boolean d = (a<b); //c is true boolean e = (a==b); //c is false boolean d = (a>=b); //c is false

32 2015/8/22 32 ? operator It is used to replace if-then-else statement Expression1 ? Expression2: Expression 3; If (expression1) is true, it will evaluate Expression 2, else Expression 3 int i = 3; int j = 4; int k; (i > j)? k = 10: k = 20; // (i > j) is false, k =20

33 2015/8/22 33 Summary Object-oriented Programming is the core of Java. Each object consists of states and behaviour. Arithmetic Operators -- +, - * /, ++, --, % Bitwise operators -- ~, ^, &, ^, >>, >> Relational operators -- ==, !=, >, =, <= Boolean Logical Operator -- &. |, !, &= ? Operator – Exp1? Exp2: Exp3


Download ppt "2015/8/221 Data Types & Operators Lecture from (Chapter 3,4)"

Similar presentations


Ads by Google