DAY4-JAVA的选择性叙述与回圈

如果是初学者,今天就进到了很像programmer的地方啦~~/images/emoticon/emoticon08.gif

1.if叙述
这是前面几天介绍过的if用法,他会根据判断条件,来决定是否执行後面的叙述。

if(判断条件){
叙述主体;
}

如果if叙述中只有一个叙述的话,则可以省略左右大括号。

2.if-else叙述
当程序中有分歧的判断叙述时,就可以使用if-else叙述来处理。

if(判断条件){
叙述主体1;
}
else{
叙述主体2;
}

if(i==1){
    System.out.println("Keep going!");
}else{
    System.out.println("Stop here!");
}    

3.巢状if
如果if中又包含其他if叙述的话,就称为巢状if叙述。

if(判断条件1){
if(判断条件2){
叙述主体;
}
...
}

if(i%6==0){
   if(i%2==0){
    System.out.println("i is an even number.");
   }
}    

4.条件运算子
以下是简洁版的if,可以用来代替if-else!
此外,根据经验,用这样的写法在刷Leetcode题目时,可以减少runtime喔!

变数 = 判断条件 ? 运算式1 : 运算式2 ;

max = (i>j) ? i : j ;
//i是否大於j,"是"就执行i;"不是"就执行j

5.for回圈
知道回圈要执行几次,就可以使用for回圈。

for(设定回圈初值;判断条件;设定增减量){
回圈主体;
}

for(int i=0;i<100;i++){
    int sum = 0;
    sum+=i;     //计算sum = sum+i
}

6.while回圈
不知道回圈要执行多少次,就可以考虑使用while回圈或是do while回圈。

设定回圈初值;
while(判断条件){
回圈主体;
设定增减量;
}

while(i<100){
    System.out.println("i is smaller than 100.");
    //i 是一个小於100的数
}

7.do while回圈
和while回圈不同的是,do while回圈一定**至少会执行一次**回圈主体。

设定回圈初值;
do{
回圈主体;
设定增减量;
}while(判断条件);
不要忘记最後的分号!!!

do{
    int i = 0;
    i++;
}while(i<100);

8.巢状for回圈
回圈叙述中又有其他回圈叙述时,就称为巢状回圈(nested loop。)

for(int i=0;i<100;i++){
    for(int j=0;j<100;j++){
        int temp = 0;
        temp = i;
        i = j;
        j = temp;
      }
}       

9.break叙述
break叙述可以强迫跳离回圈。

for(设定初值;判断条件;设定增减量){
叙述1;
叙述2;
...
break;//遇到break会直接跳离程序,break以後的部分就不会被执行到
...
}

if(i%2==0){
    break; //可以被2整除直接跳离
}       

10.continue叙述
可以强迫程序跳到回圈的起头,当程序执行到continue叙述时,即会停止执行剩余的回圈主体,而回到回圈的开始处继续执行。

for(设定初值;判断条件;设定增减量){
叙述1;
叙述2;
...
continue;
//遇到continue会直接跳到起头的for回圈,continue以後的部分就不会被执行到
...
}

if(i%2==0){
    contunue; //可以被2整除跳回起头
}       

11.switch叙述
switch叙述可以将多选一的情况简化,让程序更容易阅读。

switch(运算式){
case 选择值1;
叙述主体1;
break;
case 选择值2;
叙述主体2;
break;
...
case 选择值n;
叙述主体n;
break;
default:
叙述主体;
}
如果没有在case的最後加上break,程序就会一直执行到switch尾端才离开!

switch(number){
   case 1;
        System.out.println("This is number one.");
        break;
   case 2;
        System.out.println("This is number two.");
        break;
   default:
        System.out.println("This is neither one nor two.");

菜鸟工程师的体脂肪

菜鸟工程师也有分享食记,欢迎大家追踪喔~~
https://instagram.com/engineer_bodyfat?utm_medium=copy_link

发现打这个最难的是程序的举例XDD
明天见~~:))


<<:  Rails 如何新增 Migration 档案

>>:  Day6 Project1 - 履历

大脑如何精准学习 (4) 固化

在学习时,假设拥有前三项要素:注意力、主动参与、保持错误回馈。但这时候,可能还有一个问题,就是很慢、...

DAY4 - 认识Nx

在上一篇,建立起一个Angular+Nestjs的Nx专案,那麽这一篇就要来好好介绍什麽是Nx。 安...

DAY08 资料前处理-缺失值处理方法

前面我们介绍了如何使用探索性分析(EDA)来观察资料的型态,也学会用图表来找出这些资料的潜在讯息,今...

JavaScript学习日记 : Day21 - 数组方法(一)

在前端的日常开发中,数组使用的频率非常高,所以充分熟悉各种常见的方法後,能提升工作的效率。 1. 基...

【把玩Azure DevOps】Day17 CI/CD从这里:Pipeline设定Schedule,每日晚上排程执行

现在有不少的软件会有一个特殊的版本叫Nightly,从字面上的意思就可以得知是指每个晚上发行的版本,...