Professional Documents
Culture Documents
Scjp-Chapter 3: Monday, April 19, 2021 Instructor: Khanhdm
Scjp-Chapter 3: Monday, April 19, 2021 Instructor: Khanhdm
Version: 1.0
Author: KhanhDM
Instructor: KhanhDM
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 1 04e-BM/NS/HDCV/FSOFT v2/2
Introduction
Duration: 2 hours
Purpose: Operators and Assignments
Audience: To be Developer
Test: Self test
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 2 04e-BM/NS/HDCV/FSOFT v2/2
Objectives
Java Operators
Logical Operators
Passing Variables into Methods
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 3 04e-BM/NS/HDCV/FSOFT v2/2
Contents
Course Agenda
Two-Minute Drill
Self Test
Practice
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 4 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Java Operators
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 5 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
❑ Assignment Operators
❑ Comparison Operators
❑ instanceof Operators
❑ Equality Operators
❑ Arithmetic Operators
❑ Shift Operators
❑ Bitwise Operators
❑ Conditional Operators
❑ Primitive casting
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 6 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Assignment Operators
❑ What is a variable ?
❑ primitive variable and reference variable
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 7 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
❑ Primitive Assignments
❑ Assigning Floating-Point Numbers
❑ Assigning a Literal That Is Too Large for the Variable
❑ Assigning One Primitive Variable to Another Primitive Variable
❑ Reference Variable Assignments
❑ Assigning One Reference Variable to Another
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 8 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Primitive Assignments
= *= /= %=
+= -= <<= >>=
>>>= &= ^= |=
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 9 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 10 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 11 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
❑ When assign one primitive variable to another, the contents of the right-hand
variable are copied
int a = 6;
int b = a;
a and b are not referring to the same place in memory.
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 12 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 13 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
import java.awt.Dimension;
class ReferenceTest {
public static void main (String [] args) {
Dimension a = new Dimension(5,10);
System.out.println("a.height = " + a.height);
Dimension b = a;
b.height = 30;
System.out.println("a.height = " + a.height +"after change to b");
}
}
❑ One exception to the way object references are assigned is String. In Java, String
objects are given special treatment. For one thing, String objects are immutable.
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 14 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Comparison Operators
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 15 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
instanceof Comparison
❑ Used for object reference variables only, and use it to check whether an object is of a
particular type.
❑ You can use the instanceof operator on interface types as well.
interface Foo { }
class Bar implements Foo { }
class TestBar {
public static void main (String [] args) {
Bar b = new Bar();
if ( b instanceof Bar) {
System.out.println("b is a Bar");
}
if (b instanceof Foo) {
System.out.println("b is a Foo");
}
}
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 16 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Equality Operators
❑ Equality can be tested with the operators equals and not equals:
■ == equals (also known as “equal to”)
■ != not equals (also known as “not equal to”)
❑ There are four different types of things that can be tested:
■ Numbers
■ Characters
■ Boolean primitives
■ Object reference variables
❑ floating-point number is compared with an integer and the values are the same, the ==
operator returns true as expected.
System.out.println("5.0 == 5L? " + (5.0 == 5L));
true
❑ Equality for Reference Variables
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 17 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Arithmetic Operators
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 18 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 19 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Bitwise Operators
❑ & AND
❑ | inclusive OR
❑ ^ exclusive OR
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 20 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 21 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Conditional Operator
❑ Syntax:
someVariable = (boolean expression) ? value to assign if true : value to assign if false
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 22 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Primitive Casting
❑ Casting lets you convert primitive values from one type to another.
❑ Casts can be implicit or explicit. An implicit cast means you don’t have to write
code for the cast; the conversion happens automatically.
int a = 100;
long b = a; // Implicit cast, an int value always fits in a long
float a = 100.001;
int b = (int)a; // Explicit cast, a float can lose info as an int
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 23 04e-BM/NS/HDCV/FSOFT v2/2
Two-Minute Drill
Logical Operators
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 24 04e-BM/NS/HDCV/FSOFT v2/2
Self Test
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 25 04e-BM/NS/HDCV/FSOFT v2/2
Questions and Answers
© Copyright
© FPT SOFTWARE 2006 FPT
– TRAINING Software
MATERIAL – Internal use 26 04e-BM/NS/HDCV/FSOFT v2/2