Title: Data Types
1Data Types and Operators
2- Java is a strongly types language
- all operations are types checked by the compiler
for type compatibility - illegal operations will not be compiled
- Java contains two sets of data types
- object-oriented data types
- non-object-oriented data types
- Java object- oriented data types are defined by
classes. - Discussion of these types will be done later in
the course
3- Primary data types
- Primary data types in Java are
- boolean Represents true or false value
- byte 8-bit integer
- char Character
- double Double-precision floating point
- float single-precision floating point
- int integer
- long Long integer
- short Short integer
4 Character variables can be handles like
integers class CharArithDemo public static void
main(String args) char ch ch
X System.out.println (ch contains
ch) ch // increment ch System.out.println
(ch is now ch) ch 90 // give ch the
value Z System.out.println( ch is now
ch)
Output Ch contains X Ch is now Y ch is now Z
A char can be incremented
A char can be assigned an integer value
Note that although char is not integer type, in
some case it can handled as integer
5- Boolean type
- Boolean types represents true/false.
- true and false are reserved words in Java
- class BoolDemo
- public static void main(String args)
- boolean b
- b false
- System.out.println( b is b)
- b true
- System.out.println(b is b)
- // a boolean value can control the if statement
- b false
- if (b)
- System.out.println(This is not executed.)
- // outcome of a relational operator is a boolean
value - System.out.println(10 gt 9 is (10 gt 9) )
Output b is false b is true 10 gt 9 is true
6- More on variables
- Initializing a variable
- One way to give a variable a value is through
assignment statement - For example,
- int count 10 // giving count initial value
of 10 - char ch X // initializing ch to the
value of X - float f 1.3F // f is initialized with
1.2 - You can also declare two or more variables of the
same type using comma-separated list - For example,
- int a, b 8, c 19, d // b and c are
initialized
7- Operator
- Java has four different classes of operator
arithmetic, bitwise, relational, and logical - Arithmetic operators include
- addition
- - subtraction
- multiplication
- / division
- module
- increment
- -- decrement
- , -, , /, work mainly the same as other
languages. - is the module operator. It works both for
integer and floating-point numbers
8class ModDemo public static void main(String
args) int iresult, irem double dresult,
drem iresult 10 / 3 irem 10 3 drem
10.0 3.0 dresult 10.0 / 3.0 System.out.prin
tln(Result and remainder of 10/3 iresult
irem) System.out.println(Result and
remainder of 10.0 /3.0 dresult
drem)
output Result and remainder of 10 / 3 3
1 Result and remainder of 10.0 / 3.0
3.3333333333333335 1.0
9- Examples of increment and decrement
- X means X X 1
- X means X X 1
- Y X means Y X and X X1
- Y X means X X1 and Y X
- The same logic works for decrement (X-- )
10- Relational operators are
- ! gt lt lt gt
- Logical operators are
- And
- OR
- XOR
- ! Not
- The outcome of the relational operators is a
boolean value - The result of a logical operation is also of type
boolean
11- Suppose p and q are two boolean objects (literal,
variable, expression), the following truth table
holds - p q pq pq !p !q
- ------------------------------------------------
- - T T T T F F
- T F F T F T
- F T F T T F
- F F F F T T
- For example, suppose c is a boolean variables and
x10, y 20 - c ( x gt 15) (y 20)
- In this case since the first operand (xgt15) is
false, the result of c is false no matter what
the result of the second operand (y20) is.
12- The Assignment operator
- The assignment operator is the single equal sign
. The general format of assignment operator is - var expression
- The type of expression should match the type of
the variable - It is also possible to create a chain of
assignments - For example
- int x, y, z
- x y z 100
- In this case, going from right to left, 100 is
assigned to z which in turn z is assigned to y
and the value of y is assigned to x - Java also supports assignments for the following
logical operators - -
- For example, ab means a a b