判断
if…else
if(判断条件){
结果为true的操作
}else{
结果为false的操作
}
if(判断条件1){
}else if(判断条件2){
}else if(判断条件3){
}else{
}
输入一个数字a,1-7,输入a的时候得到今天是星期几
if语句可以嵌套使用
if(){
if(){
if(){
}
}
}
switch...case
switch(变量){
case 值1:
表达式1;
break;
case 值2:
表达式2;
break;
case 值3:
表达式3;
break;
default:
代表以上取值之外的所有情况
表达式
break;
}
int day = 4;
String result;
switch(day) {
case 0:
result = "星期天";
break;
case 1:
result = "星期一";
break;
case 2:
result = "星期二";
break;
case 3:
result = "星期三";
break;
case 4:
result = "星期四";
break;
case 5:
result = "星期五";
break;
case 6:
result = "星期六";
break;
default:
result = "参数有误";
break;
}
System.out.println(day+" : "+result);
循环:
要素:
初始化、循环的条件(布尔类型的表达式)、迭代、循环体(重复执行的代码)
for循环
for(初始化;循环条件;迭代){
循环体
}
列:打印九九乘法表
public class Multi99{
public static void main(String[] args){
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++){
if(j*i>=10){
System.out.print(j+"*"+i+"="+j*i+" ");
}else{
System.out.print(j+"*"+i+"="+" "+j*i+" ");
}
}
System.out.println();
}
}
}
结果如下:
1*1= 1
1*2= 2 2*2= 4
1*3= 3 2*3= 6 3*3= 9
1*4= 4 2*4= 8 3*4=12 4*4=16
1*5= 5 2*5=10 3*5=15 4*5=20 5*5=25
1*6= 6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7= 7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8= 8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9= 9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
while循环
初始化
while(循环条件){
循环体
迭代
}
do…while循环
初始化
do{
循环体
迭代
}while(循环条件);
列: 循环不断的生成[0,9]随机数,直到生成随机数为5的时候,那么就停止这个循环。
public class Random{
public static void main(String[] args){
int i = 0;
int j = 0;
do{
i = (int)(Math.random()*10);
++j;
System.out.println(i);
}while(i != 5);
System.out.println("循环次数:"+j);
}
}
求出1-100之间的偶数之和和奇数之和
public class Sum{
public static void main(String[] args){
int sum1 = 0;
int sum2 = 0;
for(int i=1;i<=100;i++){
if(i % 2 == 0){
sum1 += i;
}else{
sum2 += i;
}
}
System.out.println("奇数和为: "+sum2);
System.out.println("偶数和为: "+sum1);
}
}
break和continue
注:break和continue一般都是要结合循环使用的(for/while/do-while)
break
终止当前或指定循环
for(int i=0;i<10;i++){
if(i==3){
break;
}
System.out.println("i = "+i);
}
输出结果:
i = 0
i = 1
i = 2
continue
跳过本次循环,执行下一次循环
for(int i=0;i<10;i++){
if(i==3){
continue;
}
System.out.println("i = "+i);
}
输出结果:
i = 0
i = 1
i = 2
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
label标签
在循环嵌套的时候,使用label可以让break或者continue作用到指定的循环上,否则break或者continue只会默认作用到当前所处的循环上。
例如: 这个break跳出的是当前循环(也就是这里的内循环)
for(int i=0;i<3;i++){
for(int j=0;j<5;j++){
if(j==3){
break;
}
System.out.println("j = "+j);
}
}
输出结果:
j = 0
j = 1
j = 2
j = 0
j = 1
j = 2
j = 0
j = 1
j = 2
例如:这个break跳出的是外循环(因为使用了label)
f1:for(int i=0;i<3;i++){
for(int j=0;j<5;j++){
if(j==3){
break f1;
}
System.out.println("j = "+j);
}
}
输出结果:
j = 0
j = 1
j = 2