Java基础——判断、选择、循环

270 阅读1分钟

判断

在编程语言中 用于判断的的语句通常为:if 、if...else、if...else if...else

if

if(条件){
    执行语句
}

if(3>2){
        System.out.println("条件成立,if成功执行");
    }//输出条件成立,if成功执行
}

当括号内的条件为true的时候,执行语句可以使用,否则跳过if语句。

if...else

if(条件){
    语句体1
}else{
    语句体2
}

int a=85;
if(a<50){
    System.out.println("a小于50");
}else{
    System.out.println("a大于50");
}//输出结果为a大于50

执行的时候首先进行条件判断,如果条件为true,那么执行语句体1,如果条件是false,那么执行语句体2。

if...else if...else

if(条件一){ 
            语句体1; 
        }else if(条件二){
            语句体2; 
        }else if(条件三){
            语句体3; 
        }else if(条件n){ 
            语句体n; 
        }else{ 
            语句体n+1; 
        }

条件一结果为true,执行语句体1,如果为false,那么继续判断条件二

条件二结果为true,执行语句体2,如果为false,那么继续判断条件三

以此类推,如果条件n的结果还是false,那么执行语句体n+1

选择

选择的语句是switch

switch (表达式) {
            case 常量1:
                语句体1;
                break;
            case 常量2:
                语句体2;
                break;
            case 常量n:
                语句体n;
                break;
            default:
                语句体n + 1;
                break;
        }

程序执行开始首先计算表达式的值,然后将结果与case后面的常量进行匹配,一旦匹配成功,那么就执行匹配case下面的语句体,执行遇到break则跳出switch结构,执行后面的语句,如果没遇到break,那么会继续执行之后的case语句,直到遇到break跳出switch结构。

若表达式的值没有找到与之匹配的常量,那么则执行default中的语句体。

int num = 3;
    switch(num){
        case 1:
            System.out.println("现在是1号");
            break;
        case 2:
            System.out.println("现在是2号");
            break;
        case 3:
            System.out.println("现在是3号");
            break;//输出现在是3号
        case 4:
            System.out.println("现在是4号");
            break;
        case 5:
            System.out.println("现在是5号");
            break;
        default:
            System.out.println("未找到匹配值");
            break;
    }  

循环

循环分为for、while、do while

for循环

如果使用的是idea ,可以使用缩写快速设置for循环,例如for(int i=0;i<10;i++) 就可以用10.fori快速生成

for (初始化语句; 条件语句; 自增/自减语句) {循环体;}

for循环的执行顺序是初始化语句——>条件语句——>循环体——>自增/自减语句——>条件语句……,直到条件不成立停止循环。

停止循环除了条件不成立,也可以通过break和continue跳出循环。

break是结束整个for循环,而continue是结束本次循环,执行下一次循环

举例说明

break

for (int i = 0; i < 10; i++) {    if(i==6)    break;    System.out.println(i);}
结果为:
012345Process finished with exit code 0

continue

for (int i = 0; i < 10; i++) {    if(i==6)    continue;    System.out.println(i);}
结果为:
0
1
2
3
4
5
7
8
9

Process finished with exit code 0

从上面两个结果就可以看出break和continue的区别,在其他循环结构中也是同样的用法

while循环

初始化语句;while (条件语句){    循环体;    自增/自减表达式:}

while循环的执行顺序是初始化语句——>条件语句——>自增/自减表达式——>条件语句……直到条件不满足结束循环

int j=0;while (j<10){    System.out.println(j);    j++;}


0123456789Process finished with exit code 0

do...while循环

do...while循环执行顺序有些不同:初始表达式——>循环体——>自增/自减表达式——>条件语句——>循环体——>自增/自减表达式——>条件语句……直到条件不符合停止循环。

注意:do while循环无论条件是否成立,循环体都会被执行一次

初始表达式;
do{
	循环体;
	自增/自减表达式;
}while (条件语句);

int k=5;
do{
	System.out.println("Hello World");
	k++;
}while (k<0);
System.out.println(k);

Hello World
6

Process finished with exit code 0

这里可以看到k的值是不符合条件语句的,但是循环体还是执行了一次

嵌套循环

嵌套循环就是一个循环里边有另一个循环,例如二维数组的遍历,冒泡算法的实现等等……