Scanner(用户交互)、算法结构

1.Scanner用户交互类

  • Scanner对象的next()和nextLine()区别

    next()不能得到带有空格的字符串,nextLine()可以

     public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入数据:");
         	//hasNext判断是否输入了值,及输入值的类型也可以判断
            if(scanner.hasNext()){
                String str = scanner.nextLine();
                System.out.println("输入的数据为"+str);
            }
            scanner.close();
        }
    

2.算法结构

1.顺序结构

​ java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行

​ 顺序结构是最简单的算法结构,它是任何一个算法都离不开的一种基本算法结构

2.选择结构

  1. if
  2. if-else

3.Swith

  • java SE7 开始,switch支持字符串String类型
  • case的穿透属性,如果没有加break,匹配项及之后都会被输出,default内容不会被输出
public static void main(String[] args) {

        String name = "小明";

        switch (name){
            case "小红":
                System.out.println("小红");
                break;
            case "小明":
                System.out.println("小明");
                break;
            case "小黑":
                System.out.println("小黑");
                break;
            default:
                System.out.println("未知");
        }

    }

利用Idea反编译class字节码文件,直接将class文件复制到java文件目录即可查看

通过源码也可以看出,switch支持字符串,是通过字符串对应的hashCode值来进行字符串匹配的。

3.循环结构

  1. while
  2. do-while

while和do-while的区别就是,do-while无论是否符合条件,都会先执行一次执行代码块中的语句,while循环如果不符合条件则一次都不会执行。

  1. for循环
 public static void main(String[] args) {
        //输出1~1000之间能被5整除的数,每行输出3个
        for (int i = 0; i < 1000; i++) {
            if(i%5 == 0){
                System.out.print(i+"\t");//print 输出但不会换行 \t相当于tab键
            }
            if(i%15 == 0){
                System.out.println(); //println 输出会换行
                //System.out.println("\n"); 这两句都会换行
            }

        }
     
     	  //打印99乘法表
        for (int i = 1; i <=9; i++) {
            for (int j = 1; j <=i; j++) {
                System.out.print(j+"×"+i+"="+i*j+"\t");
            }
            System.out.println();
        }
    }
  1. 增强for循环
  	String[] str = {"11","b1","c1","d1"};
    for(String a:str){
        System.out.println(a);
    }
posted @ 2022-03-21 18:38  梁小白123  阅读(42)  评论(0)    收藏  举报