学习java的第4天

    技术2024-08-03  63

    01. if双分支和三元表达式的相互转换

    代码实现

    public class Demo01_If { public static void main(String[] args) { int num1 = 2; int num2 = 5; int max;//最大值 if(num1>num2) { max = num1; }else { max = num2; } System.out.println(max); System.out.println("---------------"); max = num1 > num2 ? num1 : num2; System.out.println(max); } }

    02. if多分支

    概述

    处理多种情况

    语法

    if(比较表达式1) { 语句体1; }else if(比较表达式2) { 语句体2; }else if(比较表达式3) { 语句体3; } ... else { 语句体n+1; }

    执行流程

    首先计算比较表达式1看其返回值是true还是false,如果是true,就执行语句体1,if语句结束。如果是false,接着计算比较表达式2看其返回值是true还是false,如果是true,就执行语句体2,if语句结束。如果是false,接着计算比较表达式3看其返回值是true还是false,如果都是false,就执行语句体n+1。

    代码实现

    03. if语句的嵌套使用

    需求

    获取三个数中的最大值

    代码实现

    public class Demo04_If { public static void main(String[] args) { int num1 = 6; int num2 = 7; int num3 = 3; int max; if(num1>num2) { if(num1>num3) { max = num1; }else { max = num3; } }else { if(num2 > num3) { max = num2; }else { max = num3; } } System.out.println("最大值:"+max); } }

    04. switch的概述和练习

    语法

    switch(表达式){ case1: 语句体1; break; ... default: 语句体; break; } 表达式 自动类型提升为int的类型数据(byte、short、char、int)String (java7.0)枚举

    代码实现

    public class Demo05_Switch { /* * 需求:需求:输入星期几,显示今天的减肥活动 星期一:跑步 星期二:游泳 星期三:跑步 星期四:游泳 星期五:拳击 星期六:爬山 星期日:好好吃一顿 */ public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("今天是星期几:"); String str = input.next(); switch(str) { case "一": System.out.println("跑步"); break; case "二": System.out.println("游泳"); break; case "三": System.out.println("跑步"); break; case "四": System.out.println("游泳"); break; case "五": System.out.println("拳击"); break; case "六": System.out.println("爬山"); break; case "日": System.out.println("好好吃一顿"); break; default : System.out.println("火星时间???"); break; } input.close(); } }

    05. switch语句注意事项

    case后面的表达式只能是常量表达式default可以省略,但是不建议default可以放到任何位置,但是建议放到最后break可以省略,但是会造成case穿透,一般情况,不省略breakswitch语句结束条件 遇到break遇到右大括号

    06. 循环结构语句及for循环

    语法

    for(初始表达式;条件表达式;操作表达式){ 语句体; } 初始表达式 定义开始 条件表达式 定义结束 操作表达式 如何从开始到结束 语句体 重复做的事

    执行流程

    需求

    在控制台输出10次"helloworld"

    代码实现

    public class Demo06_For { public static void main(String[] args) { for(int i=0;i<10;i++) { System.out.println("Hello World"); } } }

    07. for循环练习之求和

    需求

    求出1-100之间数据之和求出1-100之间偶数和求出1-100之间奇数和

    代码实现

    public class Demo09_For { public static void main(String[] args) { int sum1 = 0,sum2 = 0,sum3 = 0; for(int i = 1;i <= 100; i++) { //判断是否为偶数 if(i%2==0) { sum1 += i; } else { sum2 += i; } sum3 += i; } System.out.println("偶数和:"+sum1); System.out.println("奇数和:"+sum2); System.out.println("总数和:"+sum3); } }

    08. for循环练习之水仙花

    水仙花数

    三位数百位数的立方+十位数的立方+个位数的立方 = 原值

    代码实现

    public class Demo08_For { public static void main(String[] args) { int geWei = 0,shiWei = 0,baiWei = 0; for(int i = 100;i <= 999; i++) { baiWei = i / 100 % 10; shiWei = i / 10 % 10; geWei = i % 10; if((geWei * geWei *geWei +shiWei * shiWei *shiWei + baiWei * baiWei * baiWei)==i) { System.out.println(i); } } } }

    09. while循环

    语法

    初始表达式; while(条件表达式){ 语句体; 操作表达式; }

    代码实现

    /** * while循环的练习 * 需求: 需求:求出1-100之间偶数和 需求:求出1-100之间奇数和 需求:求出1-100之间总数和 * @author 海锋 * */ public class Demo10_While { public static void main(String[] args) { int sum1 = 0,sum2 = 0,sum3 = 0; int i = 1; while(i <= 100) { if(i % 2 ==0) { sum1 += i; }else { sum2 += i; } sum3 += i; i++; } System.out.println("偶数和:"+sum1); System.out.println("奇数和:"+sum2); System.out.println("总数和:"+sum3); } }

    10. do…while循环

    语法

    初始表达式; do{ 语句体; 操作表达式; } while(条件表达式);

    代码实现

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

    11. 三种循环的区别

    do…while循环 不管怎么样,至少执行一次循环体循环中的变量,在循环外也有效 while循环 是否执行循环体,由条件表达式决定循环中的变量,在循环外也有效 for循环 是否执行循环体,由条件表达式决定循环中的变量,只在循环内有效 总结 如果,在程序执行过程中,在循环外并不会使用到该变量时,那么推荐使用for循环,因为for循环的变量生命周期仅限于循环,循环结束,变量回收!

    12. 循环结构之死循环

    代码实现

    while(true) { System.out.println(1); } for(;;) { System.out.println(1); }

    13.死循环的应用

    需求

    使用死循环改造三个和尚的案例

    代码实现

    Scanner scanner = new Scanner(System.in); while(true) { System.out.println("请输入第一个和尚的身高"); int height1 = scanner.nextInt(); System.out.println("请输入第二个和尚的身高"); int height2 = scanner.nextInt(); System.out.println("请输入第三个和尚的身高"); int height3 = scanner.nextInt(); int max = ( height1 > height2 ? height1 : height2 ) > height3 ? ( height1 > height2 ? height1 : height2 ) : height3; System.out.println("max : " + max); }

    14. 循环的嵌套使用

    代码实现

    for (int i = 1; i <= 5; i++) { //内循环的次数和行数相同 for (int j = 1; j <= i; j++) { System.out.print("*"); } System.out.println(); }

    15. 循环控制语句之break、continue、return

    区别 break 只能作用在switch、循环中中止循环、switch continue 只能作用在循环中中止本次循环,继续下次循环 return 任何地方都可以使用 System.out.println("max : " + max); }

    14. 循环的嵌套使用

    代码实现

    for (int i = 1; i <= 5; i++) { //内循环的次数和行数相同 for (int j = 1; j <= i; j++) { System.out.print("*"); } System.out.println(); }

    15. 循环控制语句之break、continue、return

    区别 break 只能作用在switch、循环中中止循环、switch continue 只能作用在循环中中止本次循环,继续下次循环 return 任何地方都可以使用中止方法,并返回结果
    Processed: 0.015, SQL: 9