data types and operators and statements
DESCRIPTION
Learning Basic datatypes , operators and statements in JavaTRANSCRIPT
![Page 1: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/1.jpg)
DATA TYPES AND OPERATORS
AND STATEMENTS
![Page 2: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/2.jpg)
Data types
Prof. Ashish Bhatia
2
![Page 3: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/3.jpg)
Byte Ordering
Prof. Ashish Bhatia
3
JAVA
x86 and
x64
![Page 4: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/4.jpg)
Floating Points - float
Prof. Ashish Bhatia
4
Float [ 8byte = 64 bits]
123.45 ? What is exponent and Significand
31 – Sign Bit [ 1 bit ]
23-30 – Exponent Field [ 8 bit ]
0-22 - Significand [23 bit]
![Page 5: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/5.jpg)
Floating Points
Prof. Ashish Bhatia
5
Float [ 4byte = 32 bits]
Bits 30-23
Exponent
Bits 0-22 Significand
0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 30-23
Exponent
Bits 0-22 Significand
1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 30-23
Exponent
Bits 0-22 Significand
1 1 1 1 1 1 1 1 1 Any Non – zero value
![Page 6: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/6.jpg)
Floating Points - double
Prof. Ashish Bhatia
6
Bits 62-52
Exponent
Bits 51-0 Significand
0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 62-52
Exponent
Bits 51-0 Significand
1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 62-52
Exponent
Bits 51-0 Significand
1 1 1 1 1 1 1 1 1 Any non-zero value
![Page 7: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/7.jpg)
Super Type and Sub Type Relations
Prof. Ashish Bhatia
7
double
float
long
int
short
byte
char
![Page 8: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/8.jpg)
Using Literals
Prof. Ashish Bhatia
8
Use l or L for long values else everything is int.
Use f or F for Float values else everything is double.
For Octal use 0
For Hex use 0x or 0X
\ used for special characters
‘\n’ = New Line
‘\t’ = Tab
‘\017’ = Character constant
![Page 9: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/9.jpg)
Legal Identifiers
Prof. Ashish Bhatia
9
Must start with a letter, a currency character ($), or a connecting character such as the underscore ( _ ). Identifiers cannot start with a number!
After the first character, identifiers can contain any combination of letters, currency characters, connecting characters, or numbers.
In practice, there is no limit to the number of characters an identifier can contain.
Identifiers in Java are case-sensitive; foo and FOO are two different identifiers.
![Page 10: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/10.jpg)
Example
Prof. Ashish Bhatia
10
int _a;
int $c;
int ______2_w;
int _$;
int this_is_a_very_detailed_name_for_an_;
int :b;
int -d;
int e#;
int .f;
int 7g;
![Page 11: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/11.jpg)
Unicode Escape in Java
Prof. Ashish Bhatia
11
\ufour hex number
\u0A85
![Page 12: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/12.jpg)
Reference Datatypes
Prof. Ashish Bhatia
12
Arrays
Classes
Interface
Enum
Annotation
![Page 13: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/13.jpg)
Operators
Prof. Ashish Bhatia
13
Arithmetic Operators
+ - * / %
Conversion
Widening
Sub type to super type
Narrowing
Super Type to sub type
Mixed Conversion
![Page 14: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/14.jpg)
Operators
Prof. Ashish Bhatia
14
Unary + and –
String Concatenation
![Page 15: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/15.jpg)
Operator
Prof. Ashish Bhatia
15
Relational Operator
< > <= >= == !=
Logical Operator
& | ^ ! && ||
Bitwise Operator
& | ^ ~ << >> >>>
Increment and Decrement Operator [ ++ , -- ]
Conditional Operator (? : )
Assignment Operator
instanceof
new
![Page 16: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/16.jpg)
Example
Prof. Ashish Bhatia
16
int a = 60; /* 60 = 0011 1100 */
int c = a << 2; /* 240 = 1111 0000 */
int c = a >> 2; /* 15 = 1111 */
int c = a >>> 2; /* 215 = 0000 1111 */
What is int a = -60?
![Page 17: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/17.jpg)
Statements
Prof. Ashish Bhatia
17
Conditional
if, if-else, switch-case
Loop
for, while, do-while
break, continue, return
Labeled break and continue
![Page 18: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/18.jpg)
Brain Teasing Exercise
Prof. Ashish Bhatia
18
x*=2+5
boolean b = 100 > 99;
5.0 == 5L
if(x=0) {}
if(b){}
if(5 && 6) {}
int x = 1; int y=++x; // x++ System.out.println(y);
![Page 19: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/19.jpg)
Output
Prof. Ashish Bhatia
19
class Test{
public static void main(String[] args) {
int i = 42;
String s = (i<40)?"life":(i>50)?"universe":"everything";
System.out.println(s);
}
}
![Page 20: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/20.jpg)
Output
Prof. Ashish Bhatia
20
String s = "";
boolean b1 = true;
boolean b2 = false;
if((b2 = false) | (21%5) > 2) s += "x";
if(b1 || (b2 = true)) s += "y";
if(b2 == true) s += "z";
System.out.println(s);
![Page 21: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/21.jpg)
More on Arrays
Prof. Ashish Bhatia
21
int [] array; // recommended
int array[];
int [5] array; // ERROR
Declaring an Array
Constructing an Array
int array[] = new Array[]
int array[] = {1,2,3}
int z[] = new int[] {1,2,3}
int z[] = new int[3] {1,2,3}
![Page 22: Data types and operators and statements](https://reader033.vdocuments.us/reader033/viewer/2022060110/555e337cd8b42a63048b46ab/html5/thumbnails/22.jpg)
Getting user input
Prof. Ashish Bhatia
22
import java.util.Scanner;
class Scan
{
public static void main(String args[])
{
Scanner s = new Scanner(System.in);
int x = s.nextInt();
System.out.println(x);
x = s.nextInt();
System.out.println(x);
}
}