Download Introduction to JAVA

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Fundamentals 2
1
Programs and Data
Most programs require the temporary storage of data. The data
to be processed is stored in a temporary storage in the
computer's memory: space memory.
A space memory has three characteristics
•Identifier
•Data Type
•State
2
Identifier
is a sequence of characters that denotes the name of the space memory to be used.
•This name is unique within a program.
Identifier Rules
•It cannot begin with a digit (0 – 9).
•It may contain the letters a to z, A to Z, the digits 0 to 9, and the underscore
symbol, _.
•No spaces or punctuation, except the underscore symbol, _, are allowed.
Identifiers in Java are case-sensitive. Thus, the identifiers myNumber
and mynumber, are seen as two different identifiers by the compiler.
3
State
My be changed  variable
All lowercase.
Capitalizing the first letter of each word in a multiword identifier,
except for the first word.
Cannot be changed  constant
All uppercase, separating words within a multiword identifier with
the underscore symbol, _.
4
Data Type
•The data type defines what kinds of values a space memory is allowed to
store.
•All values stored in the same space memory should be of the same data
type.
•All constants and variables used in a Java program must be defined prior to
their use in the program.
5
Java built-in Data Types
Constant or Variable
First Decision Level
Second Decision Level
Third Decision Level
Numeric
Integer
Character
Floating-point
byte
float
short
double
char
Boolean
String
boolean
Fourth Decision Level
int
long
6
Primitive Data Types
Size
(bits)
Type
boolean
Range
Description
true, false
Stores a value that is either
true or false.
char
16
0 to 65535
Stores a single 16-bit
Unicode character.
byte
8
-128 to +127
Stores an integer.
short
16
-32768 to +32767
Stores an integer.
int
32 bits
-2,147,483,648 to
+2,147,483,647
Stores an integer.
long
64 bits
-9,223,372,036,854,775,808
to
+9,223,372,036,854,775,807
Stores an integer.
float
32 bits
accurate to 8 significant digits
Stores a single-precision
floating point number.
double
64 bits
accurate to 16 significant digits
Stores a double-precision
7
floating point number.
Variable/Constant Declaration
• When the declaration is made, memory space is
allocated to store the values of the declared
variable or constant.
• The declaration of a variable means allocating a
space memory which state (value) may change.
• The declaration of a constant means allocating a
space memory which state (value) cannot
change.
8
Constant Declaration
final dataType constIdentifier = literal | expression;
final int MAX
final int MIN
final int AVG
These are called
literals.
= 1024;
= 128;
= (MAX + MIN) / 2;
This is called
expression.
9
Variable Declaration
•
A variable may be declared:
– With initial value.
– Without initial value.
•
Variable declaration with initial value;
dataType variableIdentifier = literal | expression;
double avg
= 0.0;
int
i
= 1;
int
x =5, y = 7, z = (x+y)*3;
•
Variable declaration without initial value;
dataType variableIdentifier;
double avg;
int
i;
10
More declaration examples
• String declaration
– with initial value:
• String word="Apple";
– without initial value:
• String word;
• char declaration
– with initial value:
• char symbol ='*';
• Boolean declaration:
– with initial value:
• boolean flag=false;
• boolean valid=true;
– without initial value:
• boolean flag;
– without initial value:
• char symbol;
11
Exercises
• A-Declare a variable of double type with initial value=0.0;
• B- Declare a constant of String type with initial value=“Good”
• C- Declare a variable of type string with initial value equals to
the value of constant in B.
• D-Is the following names are valid , why?
– Student name
– 1course
– course*name
12
Operators
• Operators are special symbols used for:
– mathematical functions
– assignment statements
– logical comparisons
• Examples of operators:
– 3+5
// uses + operator
– 14 + 5 – 4 * (5 – 3) // uses +, -, * operators
• Expressions: can be combinations of variables and
operators that result in a value
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 13
Groups of Operators
• There are 5 different groups of operators:
– Arithmetic Operators
– Assignment Operator
– Increment / Decrement Operators
– Relational Operators
– Logical Operators
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 14
Java Arithmetic Operators
Addition
Subtraction
Multiplication
Division
Remainder (modulus )
+
–

/
%
Assignment Operator =
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 15
Arithmetic Operators
• The following table summarizes the
arithmetic operators available in Java.
This is an integer division
where the fractional part
is truncated.
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 16
Example
Example of division issues:
10 / 3 gives 3
10.0 / 3 gives 3.33333
As we can see,
•if we divide two integers we get an integer
result.
•if one or both operands is a floating-point
value we get a floating-point result.
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 17
Modulus
Generates the remainder when you
divide two integer values.
5%3 gives 2
5%5 gives 0
5%4 gives 1
5%10 gives 5
Modulus operator is most commonly used
with integer operands. If we attempt to
use the modulus operator on floating-point
values we will garbage!
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 18
Example: Sum of two integer
public class Sum {
// main method
public static void main( String args[] ){
int a, b, sum;
a = 20;
b = 10;
sum = a + b;
System.out.println(a + ” + ” + b + “ = “ + sum);
} // end main
} // end class Sum
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 19
Arithmetic/Assignment Operators
Java allows combining arithmetic and
assignment operators into a single operator:
+=
=
=
/=
%=
Introduction to OOP
Addition/assignment
Subtraction/assignment
Multiplication/assignment
Division/assignment
Remainder/assignment
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 20
Increment/Decrement Operators
Only use ++ or   when a variable
is being incremented/decremented
as a statement by itself.
x++;
is equivalent to x
= x+1;
x--;
is equivalent to x
= x-1;
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 21
Relational Operators
Relational operators compare two values •
They Produce a boolean value (true or •
false) depending on the relationship
Introduction to OOP
Operation
Is true when
a >b
a is greater than b
a >=b
a is greater than or equal to b
a ==b
a is equal to b
a !=b
a is not equal to b
a <=b
a is less than or equal to b
a <b
a is less than b
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 22
Example
• int x = 3;
• int y = 5;
• boolean result;
result = (x > y);
• now result is assigned the value false because
3 is not greater than 5
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 23
Logical Operators
Symbol Name
&&
||
!
AND
OR
NOT
&&
T
F
||
T
F
T
T
F
T
T
T
F
F
F
F
T
F
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 24
Example
boolean x = true;
boolean y = false;
boolean result;
result = (x && y);
result is assigned the value false
result = ((x || y) && x);
(x || y) evaluates to true
(true && x) evaluates to true
result is then assigned the value true
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 25
Operators Precedence
Parentheses
(), inside-out
Increment/decrement
++, --, from left to right
Multiplicative
*, /, %, from left to right
Additive
+, -, from left to right
Relational
<, >, <=, >=, from left to right
Equality
==, !=, from left to right
Logical AND
&&
Logical OR
||
Assignment
=, +=, -=, *=, /=, %=
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 26
Standard Output Window
Using System.out, we can output multiple •
lines of text to the standard output window.
• The exact style of standard output window
depends on the Java tool you use.
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 27
The println Method
We use println instead of print to skip a line. •
int x = 123, y = x + x;
System.out.print( " x = “ );
System.out.println( x );
System.out.print( " x + x = “ );
System.out.println( y );
System.out.println( " THE END“ );
x = 123
x + x = 246
THE END
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 28
Standard Input
• To input primitive data values, we use the Scanner
class.
• 4 steps are needed to be able to use input primitive:
– Step 1: import the Scanner class:
• import Java.util.Scanner;
– Step 2 : declaring a reference variable of a Scanner
• Scanner read ;
//we named the object read
– Step 3: creating an instance of the Scanner
• read = new Scanner (System.in);
– Step 4: use specific methods to enter data
• int x = read.nextInt();
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 29
import java.util.Scanner;
Example
public class TestInput {
public static void main(String[] args) {
Scanner input ;
int area ,length, width;
input = new Scanner (System.in); // creating an instance
System.out.println("enter the length ");
length = input.nextInt(); //reading the length from the keyboard
System.out.println("Enter the Width ");
width = input.nextInt(); //reading the width from the keyboard
area = length * width ;
System.out.println("the length is "+ length);
System.out.println("the width is "+ width);
System.out.println("the area is "+ area);
}
}
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 30
Output
enter the length
2
Enter the Width
3
the length is 2
the width is 3
the area is 6
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 31
Common Scanner Methods
• Method
Example
Scanner input = new Scanner (System.in);
nextByte( )
byte b = input.nextByte( );
nextDouble( )
double d = input.nextDouble( );
nextFloat( ) float f = input.nextFloat( );
nextInt( )
int i = input.nextInt( );
nextLong( ) long l = input.nextLong( );
nextShort( ) short s = input.nextShort( );
next()
String str = input.next();
Introduction to OOP
Dr. S. GANNOUNI & Dr. A. TOUIR
Page 32