【一步一步了解Java系列】:探索Java逻辑控制

 看到这句话的时候证明:此刻你我都在努力~

                                 加油陌生人~

个人主页:  Gu Gu Study                                                   

专栏:一步一步了解Java

喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。



如果喜欢能否点个赞支持一下,谢谢啦!

                                                                                                                作者:小闭

目录

一、顺序结构

二、分支结构 

三、switch 语句

四、循环结构 

五、break与continue

break 的功能是让循环提前结束.


何为逻辑控制呢?

在 Java 中,逻辑控制主要有以下几种结构:
 
1. 顺序结构:按照代码书写的顺序一行一行执行,如果调整代码的书写顺序,则执行顺序也发生变化;


2. 分支结构:
-  if 语句:包括单分支、双分支和多分支三种形式,用于根据不同的条件执行不同的代码块;
-  switch 语句:根据不同的条件执行不同的 case 语句,遇到 break 会结束该 case 语句,如果没有匹配的 case ,则执行 default 中的语句;


3. 循环结构:
-  while 循环:当条件为真时,执行循环体中的代码,直到条件为假时结束循环;
-  break 语句:用于在循环中提前结束循环;
-  continue 语句:用于跳过本次循环,直接进入下一次循环。

 

一、顺序结构

顺序结构是最简单,也是最直观的一种结构。就是一句一句的执行代码,没有循环语句,也没有if语句。

public class Test {
    public static void main(String[] args) {
        System.out.println("11223344");
        System.out.println("顺序结构");
        
    }
}

运行结果: 


二、分支结构 

语法风格1

if(布尔类型){

//语句

};

代码示例:  

public static void main(String[] args) {
        int sorce=100;
        if(sorce>90){
            System.out.println("父母很开心呢");
        }
    }

只有一句if语句,注意if括号里面的必须是布尔类型的数据。 


语法风格2

if(布尔表达式){

// 语句1

}else{

  // 语句2

}

代码示例:  

public static void main(String[] args) {
    int score=100;
    if(score>90){
        System.out.println("父母很开心呢");
    }else{
        System.out.println("父母会鼓励你得到更高分");
        
    }
}

这里java有Java的代码写法,这里比较建议如上的if else语句写法而不是 像C语言一样,当然这样写也是合法的但是不建议这么写。如下:是C语言的写法。

if(布尔表达式)

{

// 语句1

}

else

{

  // 语句2

}


 语法风格3

if(布尔表达式1){

   // 语句1

}else if(布尔表达式2){

   // 语句2

}else{

   // 语句3

}

代码示例: 

public static void main(String[] args) {
        int score=100;
        if(score>90){
            System.out.println("父母很开心呢");
        }else if(score>80&&score<90){
            System.out.println("父母会鼓励你得到更高分");

        } else  {
            System.out.println("父母希望你能在加把劲");
        }
    }

if 后接分号(;)问题 

int x = 20;
if (x == 10);
{
System.out.println("hehe");
}
// 运行结果
hehe

 

可能有些小伙伴就疑惑了,为什么会打印“呵呵”呢,明明没符合if里的要求。

其实是因为if语句后接了个分号“;”,导致if语句就是一句话,仅仅只是进行判断,无论真假都不会有什么要执行的语句,而后面的打印语句,就是下一条语句,无关if语句。都会进行打印的。


多个if else 语句的匹配

int x = 10;
int y = 10;
if (x == 10)
  if (y == 10)
   System.out.println("aaa");
else
   System.out.println("bbb");

大家觉得这里面的else是与哪个if匹配呢?

废话不多说,这里的else其实是与第二个if匹配的

这是因为这里的if else语句 中if会往向下的比较靠近的else匹配,而else则是往上找靠近的if来进行匹配。


三、switch 语句

语法形式:

switch(表达式){

case 常量值1:{

语句1;

break;

}

case 常量值2:{

语句2;

break;

}

default:{

内容都不满足时执行语句;

break;

     }  

}

这里需要注意的是,这里的switch语句中的表达式有一些限制:

第一点: 

上面的switch括号里的表达式中只能是这些表达式:

基本类型:byte、char、short、int,注意不能是long类型

引用类型:String常量串、枚举类型

第二点;

switch不能够表达一些复杂的表达式

/ 例如: 如果 num 的值在 10 到 20 之间, 就打印 hehe // 这样的代码使用 if 很容易表达, 但是使用 switch 就无法表示.

if (num > 10 && num < 20) { System.out.println("hehe"); }


四、循环结构 

4.1 while循环

基本语法格式:

while(循环条件){

循环语句;

}

 跟C语言相似,如下我们运用while来打印1-10的数字

nt num = 1;
while (num <= 10) {
System.out.println(num);
num++;
}

 


4.2 for循环

语法形式:

for(表达式①;布尔表达式②;表达式③){

表达式④;

}

如下还是打印1-10的数据但这里要运用for循环:

 public static void main(String[] args) {
        for (int i = 1; i <=10 ; i++) {
            System.out.print(i+" ");
        }


    }


4.3 do while循环

语法形式:

do{

循环语句;

}while(循环条件);

在这个语句里特点就是至少进行一次循环,因为这个语句第一次进循环是不需要进行判断的,所以这个语句是可以至少是可以进入一次循环的,如下代码示例: 

public static void main(String[] args) {
        int a=0;
        do{

            System.out.println("循环条件为大于0");


        }while(a>0);
    }

可以看到这里我们初始化a=0;但是他还是可以进一次循环打印出了结果。


五、break与continue
break 的功能是让循环提前结束.

如下:代码我们设置小于10就进入循环,但是设置break后定格在i==5,break提前结束了循环。

public static void main(String[] args) {
        for (int i = 1; i < 10; i++) {

            System.out.println("现在是第"+i+"次循环");
            if(i==5){
                break;
            }

        }
    }


 

continue 的功能是跳过这次循环, 立即进入下次循环.

如下:找3的倍数,就利用了continue。

int num = 100;
while (num <= 200) {
if (num % 3 != 0) {
num++; // 这里的 ++ 不要忘记! 否则会死循环.
continue;
}
System.out.println("找到了 3 的倍数, 为:" + num);
num++;
}


那今天的内容就结束了。 喜欢的话点个赞吧。

 

  • 24
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值