开发者社区> 逸朗> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Java编程基础阶段笔记 day04 Java基础语法(下)

简介: day04 Java基础语法 (下) 笔记Notes要点 switch-case语句注意 switch-case题目(switchTest5) 循环执行顺序 if-else 实现3个整数排序 String字符串比较 循环四要素 打印九九乘法表 特殊关键字continue、break switch(表达式) 表达式里仅支持 byte、short、char、int、枚举、String(jdk1.
+关注继续查看

day04 Java基础语法 (下)

笔记Notes要点

switch-case语句注意

switch-case题目(switchTest5)

循环执行顺序

if-else 实现3个整数排序

String字符串比较

循环四要素

打印九九乘法表

特殊关键字continue、break

switch(表达式) 表达式里仅支持 byte、short、char、int、枚举、String(jdk1.7后)

switch(表达式){

    case 常量1:

        执行语句1;

        break;

    case 常量2:

        执行语句2;

        break;

    ......

    default:

        执行语句n;

        break;

    }

case 后面只能跟常量,default是可选的。如果都没有匹配成功则执行default中的执行语句。default的位置是灵活的。

switch-case和if-else可以替换,switch-case效率高一些

/*

从键盘分别输入年、月、日,判断这一天是当年的第几天

注:判断一年是否是闰年的标准:

   1)可以被4整除,但不可被100整除

或

   2)可以被400整除

*/

import java.util.Scanner;

public class SwitchTest5{

public static void main(String[] args){

    //1.读取数据

    Scanner sc = new Scanner(System.in);

    System.out.println("请输入年份");

    int year = sc.nextInt();

    System.out.println("请输入月份");

    int month = sc.nextInt();

    System.out.println("请输入日期");

    int day = sc.nextInt();

    int sumDay = 0; //用来统计当年的总天数

    //2.统计天数

    switch(month){

    case 4:

        sumDay += 31;

    case 3:

        //判断当年是否是闰年

        if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){

            sumDay += 29;

        }else{

            sumDay += 28;

        }

    case 2:

        sumDay  += 31;

    case 1:

        sumDay += day;

    }

    //3.输出

    System.out.println(year + "年" + month + "月" + day + "日是当年的第" + sumDay + "天");

}

}

/*

编写程序:由键盘输入三个整数分别存入变量num1、num2、num3,

对它们进行排序(使用 if-else if-else),并且从小到大输出。

*/

import java.util.Scanner;

public class IfTest

{

public static void main(String[] args){

    Scanner sc = new Scanner(System.in);

    System.out.println("请输入三个数字");

    int num1,num2,num3;

    num1 = sc.nextInt();

    num2 = sc.nextInt();

    num3 = sc.nextInt();

    if(num1>num2){

        if(num3>num1){//num3最大

            System.out.println("小到大:"+ num2 +" "+ num1 +" "+ num3);

        }else if(num3<num2){//num3最小

            System.out.print("小到大:"+ num3 + " " + num2 + " " + num1);

        }else{

            System.out.println("小到大:"+ num2 + " " + num3 + " " + num1);

        }

    }else{//num1<num2

        if(num3>num2){//num3最大

            System.out.println("小到大:"+ num1 + " "+ num2 + " "+ num3);

        }else if(num3<num1){//num2最大

            System.out.println("小到大:"+ num3 + " " + num1 + " " + num2);

        }else{

            System.out.println("小到大:"+ num1 + " " + num3 + " " + num2);

        }

    }

}

}

String字符串比较

String str = new String("帅");

    //判断帅不帅

    System.out.println("帅" ==  str); //这样不能比字符串的内容

    boolean handsome = "帅".equals(str); //比较的是字符串的内容 - 如果内容相同返回true否则返回false

switch使用小技巧

对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”

switch(score / 60){

    

    case 0:

        System.out.println("不合格");

        break;

    case 1:

        System.out.println("合格");

        break;

编写程序:输入月,日,输出第几天

/*

  1. 编写程序:从键盘上输入2019年的“month”和“day”,要求通过程序输出输入的日期为2019年的第几天。

*/

import java.util.Scanner;

public class SwitchTest4{

public static void main(String[] args){



    //1.读取数据

    Scanner sc = new Scanner(System.in);

    System.out.println("请输入月份");

    int month = sc.nextInt();

    System.out.println("请输入日期");

    int day = sc.nextInt();
    int sumDay = 0; //用来统计当年的总天数



    //2.统计天数

    switch(month){

    /*

    case 1:

        sumDay = day;

        break;

    case 2:

        sumDay = day + 31;

        break;

    case 3:

        sumDay = day + 31 + 28;

        break;

    case 4:

        sumDay = day + 31 + 28 + 31;

        break;

    */
    case 4:

        sumDay += 31;

        

    case 3:

        sumDay += 28; //赋值和+=完全不一样。sumDay += 28 : 除了sumDay原来的天数再额外加上28

        

    case 2:

        sumDay  += 31; // sumDay = sumDay + 31

        

    case 1:

        sumDay += day;



    }
    //3.输出

    System.out.println("2019年" + month + "月" + day + "日是当年的第" + sumDay + "天");
}

}

编写程序:输入年,月,日,输出第几天

/*

从键盘分别输入年、月、日,判断这一天是当年的第几天

注:判断一年是否是闰年的标准:

   1)可以被4整除,但不可被100整除

或

   2)可以被400整除

*/

import java.util.Scanner;

public class SwitchTest4

{

public static void main(String[] args){

    Scanner sc = new Scanner(System.in);

    System.out.println("请输入年份:");

    int year = sc.nextInt();

    System.out.println("请输入月份:");

    int month = sc.nextInt();

    System.out.println("请输入天数:");

    int day = sc.nextInt();

    int sumDay = 0;

    switch(month){

        case 12:

            sumDay += 30;

        case 11:

            sumDay += 31;

        case 10:

            sumDay += 30;

        case 9:

            sumDay += 31;

        case 8:

            sumDay += 31;

        case 7:

            sumDay += 30;

        case 6:

            sumDay += 31;

        case 5:

            sumDay += 30;

        case 4:

            sumDay += 31;

        case 3:

            // 28或 29

            if((year%4==0&&year%100!=0)||year % 400 ==0){//闰年

                sumDay += 29;

            }else{

                sumDay += 28;

            }

        case 2:

            sumDay += 31;

        case 1:

            sumDay += day;

            break;

    }

    System.out.println(year+"年" + month + "月" + day + "日是当年的第" + sumDay + "天");

}

}

循环四要素

循环的四个部分:

    1.初始化条件

    2.循环条件

    3.循环体

    4.迭代条件

打印九九乘法表

/*

1*1=1

12=2 22=4

13=3 23=6 3*3=9

打印九九乘法表

*/

public class c99

{

public static void main(String[] args){

    int i,j;

    for(i=1;i<=9;i++){//9行

        for(j=1;j<=i;j++){

            System.out.print(j + "*" +i+" = "+ i*j +" ");

        }

        System.out.println();

    }

}

}

特殊关键字continue、break

break用于 switch-case语句与循环结构中,表示结束当前case语句,结束循环语句

continue,用于 循环结构 表示结束当此循环。

在嵌套循环中break结束的包含该语句的循环语句,对外层循环无作用

在嵌套循环中continue跳出的是包含他的循环语句的当次循环,不跳出

嵌套循环中如何使用内部循环的break结束外层循环

可以给循环命名,break + 循环名字

总结Summary

if-else实现三个整数排序

打印九九乘法表

break,continue使用注意事项

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
java编程思想第四版第十一章总结
容器类被分为两类:Collection和Map
51 0
java编程思想第四版第二章要点总结
boolean类型所占的存储空间大小没有明确指定, 仅定义为能够取字面量值true和false
39 0
java编程思想第四版第十章总结
内部类的特性 他允许你把一些逻辑相关的类组织在一起。
24 0
java编程思想第四版第九章总结
本章非常重要, 里面的内容涉及到了三个设计模式, 以及接口的有点,掌握这些就是掌握了重点
42 0
java编程思想第四版第八章总结
多态的含义 面向对象的三大基本特征: 封装,继承,多态。
50 0
java编程思想第四版第七章总结
实现类的复用通常有两种方式 组合:在新的类中产生现有类的对象 继承:按照现有类的类型来创造新类
39 0
java编程思想第四版第六章总结
为什么f要代码重构 第一次代码不一定是完美的, 总会发现更优雅的写法.
45 0
java编程思想第四版第五章总结
构造器的一个重要的作用: 保证对象被使用之前初始化了.
37 0
+关注
逸朗
双学士个人博客,专注于Java和大数据。技术的极致是艺术。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Java开发者面试百宝书
立即下载
Java工程师必读手册
立即下载
《阿里巴巴Java开发手册(详尽版)1.4.0》
立即下载