Java流程控制
顺序结构
最简单的结构,java默认是顺序执行
if选择结构
if(score>90)
{
System.out.println("优秀"+score);
}
else if (score>70)
{
System.out.println("良好"+score);
}
else if (score>=60)
{
System.out.println("及格"+score);
}
else
{
System.out.println("不及格");
}
swtich选择结构(支持String原理解析)
支持类型
byte,short,int,char,String(jdk7后支持)
jdk7之后支持String的原理解析
//java源码
String name="yyKing";
//jdk7 之后才支持String类型比较
switch (name)
{
case "yyKing":
System.out.println("King");
break;
case "yyHandsome":
System.out.println("Handsome");
break;
case "yySmart":
System.out.println("Smart");
break;
default:
System.out.println("未知等级");
}
//编译过后的
//其本质是做了两次swtich,第一次switch 用了name的hash值作比较,相同之后用equals作比较,之后转化为值类型在用swtich之间的比较
String name = "yyKing";
byte var4 = -1;
switch(name.hashCode()) {
case -1895024349:
if (name.equals("yyHandsome")) {
var4 = 1;
}
break;
case -737080695:
if (name.equals("yySmart")) {
var4 = 2;
}
break;
case -716755241:
if (name.equals("yyKing")) {
var4 = 0;
}
}
switch(var4) {
case 0:
System.out.println("King");
break;
case 1:
System.out.println("Handsome");
break;
case 2:
System.out.println("Smart");
break;
default:
System.out.println("未知等级");
}
while&do while循环结构
int s=10;
//while是执行前做判断
while(s<20)
{
s++;
}
//是先执行再做判断,也就是无论如何会执行一次
do {
s++;
}
while(s<20);
for循环结构
//第一个定义值,第二个条件,第三个变化
for (int i = 0; i < 10; i++) {
}
//这种写法是无限循环
for(; ;)
{}
/*
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
*/
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
if(i>=j)
{
System.out.print(""+i+'*'+j+'='+i*j+'\t');
}
else
{
break;
}
}
System.out.println();
}

浙公网安备 33010602011771号