栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVASE基础(控制语句)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVASE基础(控制语句)

一、if...else....分支语句

(1)共分为四种结构:

package departzhi;
//关于条件控制语句,流程控制语句if...else...
// 语法:


(2)代码示例:

1.判断一个数字是奇数还是偶数

int n = 5;
if (n % 2 == 0) {//n取余
    System.out.println("偶数");
} else {
    System.out.println("奇数");
}

2.判断是否登录成功

public class Ifelse01 {
    public static void main(String[] args) {

        boolean isSuccess=true;
        if(isSuccess){
            System.out.println("登录成功");
        }else{
            System.out.println("登陆失败");
        }

       //分支语句中,如果只有一条Java语句,可以省略大括号(但不推荐)
        if(isSuccess)
            System.out.println("登录成功");
        else
            System.out.println("登陆失败");
    }
}

3. 判定一个数字是正数还是负数

int n = 1;
if (n > 0) {
    System.out.println("正数");
} else if (n < 0) {
    System.out.println("负数");
} else {
    System.out.println("0");
}

(3)注意:

1.在if语句中只要有一个分支执行,则整个if语句结束。
2.上面的二、四可以保证一定会有一个分支语句执行,因为他们都有else语句。
3.if / else 语句中可以不加大括号,但是也可以写语句(只能写一条语句),此时 else 是和最接近的 if 匹配,但实际上不建议这么写,最好加上大括号。
(4)举例:
需求:
   1.系统给定人的年龄[1-1000]
   2.系统给定程序,通过人的年龄,来判断这个人处于生命的哪个阶段:
     [1-5]幼儿
     [6-18]少年
     [19-35]青年
     [36-55]中年
     [56-100]老年
     请用if...else...语句
public class Ifelse02 {
    public static void main(String[] args) {
        int i = 21;//i为年龄
        if (i >= 1&&i <= 5) {
            System.out.println("幼儿");
        } else if (i <= 18) {
            System.out.println("少年");
        } else if (i <= 35) {
            System.out.println("青年");
        } else if (i <= 55) {
            System.out.println("中年");
        } else if (i <= 100) {
            System.out.println("老年");
        }
    }
}

二、switch分支语句

(1)结构:

package departzhi;

(2)代码示例:

1.根据 day 的值输出星期

int day = 7;
switch(day) {
    case 1:
     System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    case 4:
        System.out.println("星期四");
        break;
    case 5:
        System.out.println("星期五");
        break;
    case 6:
        System.out.println("星期六");
        break;
    case 7:
        System.out.println("星期日");
        break;
    default:
        System.out.println("输入有误");
        break; }

//根据 switch 中值的不同, 会执行对应的 case 语句. 遇到 break 就会结束该 case 语句.
//如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句.
//一个 switch 语句最好都要带上 default.

2.根据字母输出等级

public class Switch01 {
    public static void main(String[] args) {
        char a='C';
        switch(a){
            case 'A':
                System.out.println("优秀");
            break;
            case 'B':
                System.out.println("良好");
            break;
            case 'C':
                System.out.println("及格");
            break;
            default:
                System.out.println("不及格");
        }
        }
}

(3)注意:

1.break、defalut语句可以没有
2.switch里的int和case里的int一个一个进行匹配,遇到break结束
3.case下如果没有break,则到下一个case语句(case穿透现象)
4.如果都没有匹配上,则进行defalut语句
5.switch后面的括号里无论填什么类型,都会自动转换为int类型
6.case可以合并
//case可以合并
char a='C';
        switch(a){
            case 'A':case 'B':case 'C':
               System.out.println("优秀");
               break;

(4)举例:

需求:
1.系统给定学生的成绩,成绩可以带小数.[0-100]
2.编写程序根据学生的程序判断学生成绩等级:
  [90-100]优秀
  [70-90]良好
  [60-70]及格
  [0-60]不及格
  以上程序只允许使用switch语句
public class Switch02 {
    public static void main(String[] args) {
        //假定成绩合法
        double score=95.5;
        int grade=((int)score)/10;
        switch(grade){
            case 9: case 10:
                System.out.println("优秀");
            break;
            case 7: case 8:
                System.out.println("良好");
            break;
            case 6:
                System.out.println("及格");
            break;
            default:
                System.out.println("不及格");

        }
    }
}

三、For循环语句

(1)结构:

普通for循环语句结构:

package departzhi;


public class For01 {
    
   

关于for循环的嵌套:

package departzhi;

public class For02 {
    public static void main(String[] args) {
        for(int i=5;i>0;i--){
            for(int j=0;j 

(2)代码示例:

1.打印 1 - 10 的数字

for (int i = 1; i <= 10; i++) {
    System.out.println(i);
}

2.计算10的阶乘

 int sum=0;
 int  k=1;
 int  i=1;
for (int i = 1; i <= 10; i++) {
    k=k*i;//1*1  1*1*2  1*1*2*3......
    sum+=k;
 }
System.out.println(sum);

(3)注意:

1.for循环开始执行,先执行表达式1,并只执行一次
2.进而判断表达式2的结果,如果是true,则执行java语句
3.再而执行表达式3,然后再判断表达式2的结果,直到表达式2结果是false,则for循环结束

(4)举例:

1.需求:
使用嵌套的for循环打印九九乘法表
1*1=1
2*1=2 2*2=4
........
9*1=9...........9*9=81
public class For03 {
    public static void main(String[] args) {
        for(int i=1;i<=9;i++){
            for(int j=1;j<=i;j++){
                System.out.print(i+"*"+j+"="+i*j+" ");
            }
            System.out.println();
        }
    }
}
2.需求:
计算1-100之间所有奇数的求和
//法一:
public class For04 {
    public static void main(String[] args) {
        int sum=0;
        for(int i=1;i<100;i++){
            if(i%2!=0) {
                //取余,获取奇数
                //追加
                sum += i;
            }
    }      System.out.println(sum);


    }
}


四、while循环语句

(1)结构:

while循环

package departzhi;

import org.w3c.dom.ls.LSOutput;




public class While01 {
    public static void main(String[] args) {
        
       

do while

package departzhi;


public class while02 {
    public static void main(String[] args) {
        int i=0;
        do{
            i++;
            System.out.println(i);
        }while(i<10);
    }
}

(2)代码示例:

1.打印1-10、1-9的数字

//打印1-10
 int i=0;
        while(i<10){
            i++;
            System.out.println(i);//0 1.....10
        }
        

         }
}

2.计算 1! + 2! + 3! + 4! + 5!

int num = 1;
int sum = 0;
// 外层循环负责求阶乘的和
while (num <= 5) {
    int factorResult = 1;
    int tmp = 1;
    // 里层循环负责完成求阶乘的细节. 
    while (tmp <= num) {
        factorResult *= tmp;
        tmp++;
   }
    sum += factorResult;
    num++; }
System.out.println("sum = " + sum);

//注意事项
//1. 和 if 类似, while 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上 { }
//2. 和 if 类似, while 后面的 { 建议和 while 写在同一行.
//3. 和 if 类似, while 后面不要多写 分号, 否则可能导致循环不能正确执行.

(3)注意:

1.while循环执行的次数是:0-N次
2.do while循环执行的次数是:1-N次

五、break(让循环提前结束)

代码示例: 找到 100 - 200 中第一个 3 的倍数

int num = 100;
while (num <= 200) {
    if (num % 3 == 0) {
        System.out.println("找到了 3 的倍数, 为 " + num);
        break;
   }
    num++; }
// 执行结果
找到了 3 的倍数, 为 102

六、continue(跳过这次循环, 立即进入下次循环.)

代码示例: 找到 100 - 200 中所有 3 的倍数

int num = 100;
while (num <= 200) {
    if (num % 3 != 0) {
        num++;  // 这里的 ++ 不要忘记! 否则会死循环. 
        continue;
   }
    System.out.println("找到了 3 的倍数, 为:" + num);
    num++; }
//执行到 continue 语句的时候, 就会立刻进入下次循环(判定循环条件), 从而不会执行到下方的打印语句
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/680430.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号