1 / 33

Data Types & Operators

Data Types & Operators. Lecture from (Chapter 3,4). Review. An introduction to Object-oriented programming Arithmetic Operators Bitwise operators Relational Operators Boolean Logical Operator Assignment Operator.

chesna
Download Presentation

Data Types & Operators

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Types & Operators Lecture from (Chapter 3,4)

  2. Review • An introduction to Object-oriented programming • Arithmetic Operators • Bitwise operators • Relational Operators • Boolean Logical Operator • Assignment Operator

  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. 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. 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. 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. • 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.

  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. Arithmetic Operator – page 74 Operator Description + addition - Subtraction * Multiplication / Division % Modules ++ Increment -- Decrement

  9. Example – addition and subtraction result

  10. Example – multiplication and division result 0: defined as integer result

  11. Special operator Expression Equivalent 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. Example of special operator

  13. Increment and Decrement Expression Equivalent expression a = a + 1; ++a; a = a – 1; --a; result

  14. Bitwise Operators – page 81 Operator Description ~ Bitwise unary NOT & Bitwise AND | Bitwise OR ^ Bitwise exclusive OR >> Shift Right << Shift LEFT >>> Shift Right with zero fill

  15. Operation - examples Operator Expression 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. 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. OR Example • 1111 0010 (0xf2)1111 1110 (0xfe)--------------(or) |1111 1110 (0xfe) • Examplebyte c = 0xf2;byte d = 0xfe;byte e = c | d; //e is 0xfe

  18. One’s complement • 1111 0010 (0xf2)-------------- ~0000 1101 (0x0d) • Examplebyte c = 0xf2;byte e = ~c; //e is 0x0d

  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. Example result

  21. Relational Operators Operator Description == Equal to != Not equal to > Greater than < Less than >= Grater than or equal to <= Less than or equal to

  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. Example

  24. SHIFT >> (right) by one bit • 1111 0010 (0xf2)>> 1 (shift right by one bit)--------------------- • 0111 0001 (0x79) • Examplebyte c = 0xf2;byte e = c >>1; //e is 0x79

  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. SHIFT << (left) by one bit • 1111 0010 (0xf2)<< 1 (shift right by one bit)--------------------- • 1110 0100 (0xe4) • Examplebyte c = 0xf2;byte e = c <<1; //e is 0xe4

  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. 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. Example of shift result

  30. Relational Operators Operator Description == Equal to != Not equal to > Greater than < Less than >= Grater than or equal to <= Less than or equal to

  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. ? 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. 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

More Related