You are on page 1of 30

Statements

Java SE
Contents

Operators

Expressions

Statements
Operators
Operator Type Operators Description

Variable မ"#$အ#$ အစ#$ထiu$ရ#တ,င.


Assignment =, +=, -=, *=, /= အသu0$1ပu

Primitive Variable မ"#$အ#$ အeပ5င.၊


Arithmetic +, -, *, /, %, ++, - - အ7uတ.၊ အe1မ8#က.၊ အစ#$၊ အ:ကင.$;#
ရ#တ,င. အသu0$1ပu

Primitive Variable မ"#$အ#$


Relational <, <=, >, >=, !=, == 7<iuင.$ယ<>.ရ#တ,င. အသu0$1ပu

Primitive Variables မ"#$ NOT, AND,


Logical !, &&, || OR Logic မ"#$အ#$ အသu0$1ပu7iuင.
Expression
• Java ဘ#သ#ရပ.တ,င. Variables မ"#:၊ Operators မ"#:
အ#: တ,@ဖက.BပC:eသ#.၎င.:၊ Method မ"#:ကiu
eခFဆiuBပC:eသ#.၎င.: လuပ.eဆ#င.ခ"က.မ"#:ကiu eရ:သ#:7iuင.

• eရ:သ#:ရ#တ,င.လ@ မ+်သiueရ:သ#:ရမ+်ဆiuသ+်ကiu
တiတiက"က" သတ.မ<တ.ထ#:ပ5သ+်

• ထiuသiueရ:သ#:မKLမ"#:ကiu Expression ဟu eခFပ5သ+်


Expressions
int data = 10;
array [0] = 100;
System.out.println( Element 1 at index 0 :
+ array[0]);

int result = 1 + 2; // result is now 3


if(value1 == value2) {
System.out.println( value1 == value2 );
}
Precedent Of the Operators
• Expression တစ.ခuတ,င. Arithmetic Operator မ"#$အ#$ တစ.ခuထက.မက
eရ$သ#$7iuင.ပ5သည.။

• Arithmetic Operator မ"#$အ#$ တစ.ခuထက.မက eရ$သ#$ထ#$ပ5က Precednece


1မင.Lမ#$eသ# Operator အ#$ ဦ$စ#$eပ$တ,က.ခ"က.BပC$ ရလ#eသ# ရလဒ.1ဖင.L ဆက.၍
တ,က.ခ"က.ပ5သည.။

• eအ#က.ပ5 Expression အတ,င.$တ,င. / သည. + ထက. Precedence 1မင.Lမ#$eသ#eSက#င.L b


အ#$ c 1ဖင.Lစ#$၍ ရလဒ.အ#$ a 1ဖင.L eပ5င.$eပ$မည.1ဖစ.သည.။

• တ,က.ခ"က.မKLအ#$တiက"မKL;ieစရန. က,င.$စက,င.$ပiတ.1ဖင.L ဝန.$ရ0၍ eရ$သ#$7iuင.ပ5သည.။

a+b/c
a + (b / c)
Statements
• အဓiပW5ယ.1ပX.Lစu0eသ# စ#eSက#င.$တစ.eSက#င.$အ#$ Statement ဟueခFဆiuသည.။

• Statement အမ"iu$အစ#$ ၃မ"iu$;iပ5သည.။

• Expression Statement

အခ"iueသ# Expression မ"#$၏eန#က.တ,င. “;” အ#$ eရ$သ#$လiuက.\u07<င.L Statement
တစ.ခu1ဖစ.လ#7iuင.BပC$၊၎င.$တiuအ#$ Expression Statement ဟu eခFဆiuပ5သည.။

• Declaration Statement

အသu0$1ပuလiuသX.L Variable မ"#$အ#$ Declare လuပ.သX.L Statement မ"#$အ#$
Declaration Statement ဟu eခFပ5သည.။

• Control Flow Statement



ပ\iuဂရမ.၏ အသ,#$အလ#မ"#$အ#$ Control လuပ.သX.Lအခ5မ"iu$တ,င. အသu0$1ပu7iuင.ပ5သည.။
Expression Statements
Expression Type Sample
Assignment Expression value = 23445;
Increment Expression Value ++;

value --;
++ value;
-- value;

Method Invocation obj.getValue();


Object Creation String[] array = new String[3];
Control Flows Statements
Decision Statements Looping Statements

if for

if / else while

if / else if / else do / while

switch
if statement

true false
boolean expression
if (boolean expression) {
statements ;
Statement
}
other statements;
if / else statement

true
Boolean
false
if (boolean expression) {
expression

statements ;
Statement for true Statement for false
} else {
other statements;
}
if / else if / else
if (expression 1) {
true
Condition 1
false statement 1 ;
true false
} else if (expression2) {
Statement 1 Condition 2

statement 2;
Statement 2 Statement 3

} else {
statement 3;
}
switch
public void showGrade(char mark) { • တန.ဖiu$တစ.ခuအeပFလiuက.၍
switch(mark) { e1ပ#င.$လည.$လuပ.eဆ#င.
case A : eစလiuသX.L အခ5မ"iu$
System.out.println( Grade A );
break;
• case အတ,င.$eတ,L;iပ5က
case B :
break အ#$ မeတ,L မခ"င.$
System.out.println( Grade B );
break;
လuပ.eဆ#င.သ,#$မည.
default:
System.out.println( Other Grade ); • case အတ,င.$တ,င.
default; မeတ,L;iပ5က default အ#$
} လuပ.eဆ#င.မည.
}
switch Vs if / else if / else
• မည.သX.L အခ5မ"iu$တ,င. switch အ#$ အသu0$1ပuသင.L၍
မည.သX.L အခ5မ"iu$တ,င. if / else if / else အ#$ အသu0$1ပu
သင.Lသနည.$။

• တiက"eသ#တန.ဖiu$တစ.ခu အeပFမKတည.၍
လuပ.eဆ#င.မKLအ#$ခ,@1ခ#$လiuပ5က eရ$သ#$ပu0;င.$လင.$eသ#
switch အ#$ eရ$သ#$သင.L၍၊ အတiuင.$အတ# ပမ#ဏ
အeပFမKတည.၍ ခ,@1ခ#$အသu0$1ပuလiuပ5က if / else if / else
အ#$ အသu0$1ပuသင.Lပ5သည.။
Looping Statement
• လuပ.eဆ#င.ခ"က.မ"#$အ#$ အ_ကiမ._ကiမ.1ပuလuပ.လiuသX.L
အခ5အသu0$1ပuရပ5သည.။

• for, while 7<င.L do / while တiu;iSက၏။

• Array က@Lသiueသ# Element မ"#$အ#$


တစ.ခuစC1ပuလuပ.လiuသX.L အခ5မ"iu$တ,င. for အ#$၎င.$၊ boolean
expression ၏ တန.ဖiu$သည. true 1ဖစ.eနသ၍ အ_ကiမ._ကiမ.
အလuပ.လuပ.eစလiuသX.L အခ5မ"iu$တ,င. while 7<င.L do / while
တiuအ#$ အသu0$1ပu7iuင.ပ5သည.။
for loop
Condition
i < array.length

Initialization Update
int i = 0 i ++

for (int i=0; i < array.length; i++) {


System.out.println(array[i]);
}
enhanced for loop
List<User> userList = this.getUserlist();

for (User user : userList) {


System.out.println(user.getName());
}

• Java SE 5 အeရ#က.မ<# 1ဖ+့်စ,က.လ#တ@L for loop တစ.မ"iu:1ဖစ.BပC: for


each loop လiuလ@ eခFSကပ5သ+်

• Array ဒ5မ<မဟuတ. Collection Object တစ.ခu အတ,င:. ;i element မ"#:အ#:


တစ.ခu1ခင.: iterate လuပ.လiuသ+့်အခ5တ,င. အသu:0 1ပu7iuင.သ+်
do while loop
boolean exitSelected = false;

do {
String selectedOption =
displayMenuToUser();

if(selectedOption.equals( exit ) {
exitSelected = true;
}

} while ( exitSelected == false);


while loop
boolean bunsAvailable = true;

while(bunsAvailable) {

// prepare burger

if(nomoreBurns) {
bunsAvailable = false;
}
}
do while & while
branching
return

break

continue
return statement
public boolean isEven(int val) { • Return Type သည. void
return (val%2) == 0; မဟuတ.eသ# method မ"#$တ,င.
} return type ၏
တန.ဖiu$အမ"iu$အစ#$ အတiuင.$
public void writeData(String [] array) { တန.ဖiu$တစ.ခuအ#$
if(null == array ¦¦ array.length == 0) { eန#က.ဆu0$တ,င. မ1ဖစ.မeန
return; return လuပ.ရပ5သည.။
}
• Method တစ.ခuအ#$
for(String s : array) { အဆu0$သတ.လiuပ5က return
System.out.println(s);
statement အ#$
}
အသu0$1ပu7iuင.ပ5သည.။
}
break statement
int i = 1;

while (i < 20) {


System.out.println(i);

if (i % 3 == 0) {
break;
}
i++;
}

• Looping Statement Block အတ,င.$;i Statement မ"#$အ#$ ရပ.တ7.Lလiuပ5က


break statement အ#$ အသu0$1ပu7iuင.ပ5သည.။

• While သiuမဟuတ. For looping block အတ,င.$ break statement အ#$ eတ,L;iပ5က
လက.;ieနရ#တ,င. loop အ#$ ရပ.တ7.LBပC$ eန#က.ပiuင.$;i statement မ"#$အ#$
ဆက.လuပ.မည. မဟuတ.eတ#Lပ5။
continue statement
public static void main(String[] args) {
String str ="Java is amazing programming language!";

for (int i = 0; i < str.length(); i++) {


if(str.charAt(i) != 'a') {
continue;
}

System.out.println("Character a is at the position of " + i);


}
}

• Looping statement block အတ,င.$ လက.;iလuပ.eဆ#င.eနမKLမ"#$အ#$ ရပ.၍


eန#က.အ_ကiမ. လuပ.eဆ#င.eစလiuပ5က continue statement အ#$ အသu0$1ပu7iuင.ပ5သည.။

• For သiuမဟuတ. While Statement block အတ,င.$ continue statement အ#$


eတ,L;iပ5က eန#က.;i Statement မ"#$အ#$ ဆက.မလuပ.eတ#Lပ@ eန#က.တစ._ကiမ. အစမ<
1ပန.၍ လuပ.မည. 1ဖစ.ပ5သည.။
break & Continue
Nested Loop

for (Hour hour : getHours() ) {


for (Minut minut : hour.getMinuts()) {
for(Second second : minut.getSeconds()) {
// do something
}
}
}
Using label
• Java ဘ#သ#ရပ.တ,င. eအ#က.ပ5 Statement မ"#$7<င.L Label မ"#$ကiu အသu0$1ပu7iuင.ပ5သည.

• code block

• looping statement (for, while, do while statements)

• conditional structures (if and switch statements)

• expressions

• Assignments

• return statements

• try blocks

• throw statements
break with label
public static void main(String[] args) {
outer:
for (int i = 0; i < 3; i++) {
System.out.println("Outer Counter : " + i);
for (int j = 0; j < 5; j++) {
if((j + 1)%3 == 0)
break outer;
System.out.println("Inner Counter : " + j);
}
}
}

• အကယ.၍ looping statement အ#$ 7<စ.ထပ.အသu0$1ပuထ#$ပ5က၊ သ#မန. break statement အ#$


အသu0$1ပuထ#$ပ5က ထiu break သည. လက.;i looping statement 7<င.Lသ# သက.ဆiuင.မည. 1ဖစ.သည.။

• သiuရ#တ,င. label အ#$ အသu0$1ပuပ5က break 7<င.L တ,@ဖက.eရ$သ#$ထ#$eသ# label အ#$


တပ.ဆင.ထ#$သX.L looping statement အထi သက.eရ#က.မKL ;iမည. 1ဖစ.ပ5သည.။
continue with label
String str = "Java is amazing programming language!";
String [] array = str.split(" ");

search:
for (int i = 0; i < array.length; i++) {
int j = 0;
while (array[i].length() > j) {
if(array[i].charAt(j ++) == 'a') {
continue search;
}
}
System.out.println("\"" + array[i] + "\" does not contain char a.");
}

• Continue Statement အ#$ Break က@Lသiuပင. label အ#$ အသu0$1ပu၍ eရ$သ#$7iuင.ပ5သည.။

• Continue 7<င.L တ,@ဖက.eရ$သ#$ထ#$eသ# label အမည.eနရ#;ieသ# Looping Statement


အထi လက.;i Statement မ"#$အ#$ 1ဖတ.က# eန#က.တစ._ကiမ.1ပန.လuပ.eစမည. 1ဖစ.သည.။
Questions

• for 7<င.L enhance for တiu၏ က,#1ခ#$ခ"က.ကiu eဖF1ပပ5

• if / else if 7<င.L switch တiu၏ က,#1ခ#$ခ"က.ကiu eဖF1ပပ5

• while 7<င.L do while တiu၏ က,#1ခ#$ခ"က.ကiu eဖF1ပပ5

• for 7<င.L while တiu၏ က,#1ခ#$ခ"က.ကiu eဖF1ပပ5

You might also like