美文网首页
javase基础04-Scanner、Random、选择与循环结

javase基础04-Scanner、Random、选择与循环结

作者: jiyuchen1 | 来源:发表于2018-03-25 21:22 被阅读0次

    Scanner类

    Scanner类是属于引用数据类型,我们先了解下引用数据类型。

    引用数据类型的使用

               引用数据类型的变量定义及赋值有一个相对固定的步骤或格式。

    1.创建对象并初始化

               数据类型 变量名 = new 数据类型();

    2.通过对象调用方法或属性

               变量名.方法名();

    Scanner类

           Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。

    Scanner使用步骤:

    1.导包:

    import java.util.Scanner;
    

    2.创建对象实例:

    Scanner sc = new Scanner(System.in);
    

    3.调用方法:

    int  i = sc.nextInt(); 用来接收控制台录入的数字
    String s = sc.next(); 用来接收控制台录入的字符串
    

    常用方法:

    nextInt();//接受Int整数
    nextDounle();//接受Double浮点数
    next();//用于接受字符串
    nextLine();//用于接受字符串
    

    next()与nextLine()区别:

    nextLine();//只遇到回车
    next();//回车、Tab、空格、都会结束
    

    Random

           用来产生随机数的类Random,它也属于引用数据类型

    Random使用方式:

    1.import导包:所属包

    import java.util.Random
    

    2.创建实例格式:

    Random 变量名 = new Random();
    

    方法简介:

    public int nextInt(int maxValue)产生[0,maxValue)范围的随机整数,包含0,不包含maxValue;
    
    public double nextDouble()  产生[0,1)范围的随机小数,包含0.0,不包含1.0。
    

    选择结构

    if语句

    (1)三种格式

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

    (2)注意事项

    A:比较表达式无论简单还是复杂,结果是boolean类型
    B:if语句控制的语句体如果是一条语句,是可以省略大括号的;如果是多条,不能省略。
    建议:永远不要省略。
    C:一般来说,有左大括号,就没有分号,有分号,就没有左大括号。
    D:else后面如果没有if,是不会出现比较表达式的。
    E:三种if语句其实都是一个语句,只要有一个执行,其他的就不再执行。
    

    (4)三元运算符和if语句第二种格式的关系

    所有的三元运算符能够实现的,if语句的第二种格式都能实现。
    反之不成立。
    
    如果if语句第二种格式控制的语句体是输出语句,就不可以。
    因为三元运算符是一个运算符,必须要有一个结果返回,不能是一个输出语句。
    

    嵌套if与多重if

    switch语句

    (1)格式:

    switch(表达式) {
        case 值1:
            语句体1;
            break;
        case 值2:
            语句体2;
            break;
        ...
        default:
            语句体n+1;
            break;
    }
    

    格式解释说明:

    switch:说明这是switch语句。
    表达式:可以是byte,short,int,char
        JDK5以后可以是枚举
        JDK7以后可以是字符串
        不能处理long或其他类型
    case:后面的值就是要和表达式进行比较的值
    break:表示程序到这里中断,跳出switch语句
    default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else
    

    (2)执行流程:

    A:首先计算表达式的值
    B:和每一个case进行匹配,如果有就执行对应的语句体,看到break就结束。
    C:如果没有匹配,就执行default的语句体n+1。
    

    (3)注意事项:

    A:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
    B:default可以省略吗?
        可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
        特殊情况:
            case就可以把值固定。
            A,B,C,D
    C:break可以省略吗?
        可以省略,但是结果可能不是我们想要的。
        会出现一个现象:case穿透。
        最终我们建议不要省略
    D:default一定要在最后吗?
        不是,可以在任意位置。但是建议在最后。
    E:switch语句的结束条件
        a:遇到break就结束了
        b:执行到末尾就结束了
    

    (4)if语句和switch语句各自的场景

    A:if
        针对boolean类型的判断
        针对一个范围的判断
        针对几个常量的判断
    B:switch
        针对几个常量的判断
    

    循环语句

    for循环语句

    for(初始化语句;循环判断条件;控制条件){
    循环体;
    }
    

    while循环语句

    初始化语句;
    while(循环判断条件){
    循环体;
    控制条件;
    }
    

    for和while的区别

    a:使用上的区别
        for语句的那个控制条件变量,在循环结束后不能在使用了。
        而while的可以继续使用。
    b:理解上的区别
        for适合于一个范围的判断
        while适合次数不明确的
    

    do...while语句

    初始化语句;
    do {
        循环体语句;
        控制条件语句;
    }while(判断条件语句);
    

    三种循环的区别:

    a:do...while循环至少执行一次循环体
    b:for和while必须先判断条件是否是true,然后后才能决定是否执行循环体
    

    循环使用的注意事项(死循环)

    A:一定要注意修改控制条件,否则容易出现死循环。
    B:最简单的死循环格式
        a:while(true){...}
        b:for(;;){}
    

    控制跳转语句

    (1)break:中断的意思
        A:用在循环和switch语句中
        B:作用
            a:跳出单层循环
            b:跳出多层循环,需要标签语句的配合
    (2)continue:继续
        A:用在循环中
        B:作用
            a:跳出单层循环的一次,可以继续下一次
    (3)return:返回
        A:用于结束方法的
        B:一旦遇到return,程序就不会在继续往后执行。
    

    嵌套循环:

    for(初始化表达式; 循环条件; 操作表达式) {
        ………
        for(初始化表达式; 循环条件; 操作表达式) {
            执行语句
            ………
        }
        ………
    }

    相关文章

      网友评论

          本文标题:javase基础04-Scanner、Random、选择与循环结

          本文链接:https://www.haomeiwen.com/subject/ypaccftx.html