Java复习笔记三

#1.用户交互 Scanner

获取用户输入,提供人机交互。从属类为java.util.Scanner,通过Scanner获得用户输入。

基本语法:

Scanner s =new Scanner(system.in);

常通过next()方法进行空格判定输入结束,使用nextLine()方法进行回车判定输入结束

两种写法:

一、使用if条件判断:

Scanner scanner = new Scanner(system.in);

if(scanner.hasNext()){
    String str=scanner.next();//输出结束后按空格结束输出
    //String str=scanner.nextLine();输出结束后按回车结束输出
    System.out.println("输出内容为"+str);
}

注:next()方法一定要得到有效输出才可以结束输入。对有效字符前的空白,next()方法会自动去掉,只有在输入有效字符后吗,输入空白就会结束输入,这样next()方法就永远得不到带空格的字符串。

二、不使用if判断是否输入:

Scanner scanner = scanner(system.in);

String str =scanner.nextLine();
System.out.println("输出内容为"+str);

注:nextLine()方法以Enter为结束符,按下Enter,前面的所有输入包括空格都会作为输入结果进入到scanner类中,因此nextLine()方法可以获得空白。

*在调用scanner类时,要记得在输入结束后,使用close()方法进行关闭键盘监听,以节省cpu开销,提升工作效率。

#2.java的结构

java的流程控制可以分为顺序结构选择结构循环结构,以及要注意break和continue的用法

        1.顺序结构

        除非特殊注明,否制就按顺序执行,一句一句执行。语句和语句之间,框与框之间直接是按从上到下的顺序执行的,由若干个依次执行的处理步骤组成,是一个基础算法结构,任何算法都离不开它,如下图:

                                 Java复习笔记三

         代码示例:

System.out.println("helllo");
System.out.println("world");
System.out.println("I ");
System.out.println("am");
System.out.println("little");
System.out.println("monster!");

        2.选择结构

        if单选择结构

        判断一个东西是否可行,然后再执行,用if语句表示

        原理图如下:

                           Java复习笔记三

        语法:

        

if(布尔表达式){
    //如果布尔表达式为true将执行的语句
}

        if的双选择结构

        if后的布尔表达式,只有true和false两种情况:

        原理图示如下:

                             Java复习笔记三

示例代码如下:

if(布尔表达式){
    //如果布尔表示的结果为true要进行的操作
}else{
    //如果布尔表示的结果为false要进行的操作
}

        if多选择结构

        if后的布尔表达式,不仅有两个结果

        原理图如下:

             Java复习笔记三

示例代码如下:

if(布尔表达式1){
    //如果布尔表达式1的结果为true则执行
}else if(布尔表达式2){
    //如果布尔表达式2的结果为true则执行
}
...
else{
    //以上的所有表达式都为false则执行
}

 switch case多选择结构

switch case语句通过判断switch中的量和case中的量是否相等实现选择,每一个case的值称为一个分支。现在switch支持byte,short、int、char和String类型变量,且case标签中必须为字符串常量和字面量。

示例代码如下:

switch(expression){
    case value:
       //语句
        break;
    case value:
       //语句
        break;
    default:
       //语句
}

3.循环结构、

        循环结构分为while循环、do-while循环和for循环

        while循环是一个肯定循环,它的布尔表达式只要是true就会一直循环。它至少执行0次,因为它是先判断再循环的执行顺序。

        示例代码如下:

while(布尔表达式){
//循环内容
};

          do-while循环是一个否定循环,它的布尔表达式只要是false就会一直循环。且它是一个至少执行一次的循环,因为它是先循环再判断的执行顺序。

        ·示例代码如下:

do{
    //代码语句

}while(布尔表达式);

        for循环,是一种通用结构,最有效、最灵活的循环结构。

        示例代码如下:

for(初始化;布尔表达式;更新)
{
    //循环语句
}

注:1.for(::)是一个死循环

        2.更新时要注意迭代因子自增的前后

        增强型for循环

        示例代码如下

for(声明语句:表达式)
{
    //代码句子
}

一般用于遍历数组和集合型for循环。

#3.break和continue的用法

        break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语 句中使用)
        continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

关于goto关键字
 

 goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的-一个保留字,但并未在语言中得到正式使用; Java没有goto。然而,在break和continue这两个关键字的身 上,我们仍然能看出一些goto的影 子---带标签的break和continue。


“标签"是指后面跟-一个冒号的标识符,例如: label:


对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是: 我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环, 但若随同标签使用,它们就会中断到存在标签的地方。

上一篇:前端表单标签form 及 简单应用


下一篇:torch.gather与torch.scatter