【JavaSE】流程控制

一、Scanner对象
1.next(),nextLine()

  • next():
    • 一定要读取到有效字符后才可以结束输入。
    • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
    • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
    • next()不能得到带有空格的字符串。
  • nextLine():
    • 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
    • 可以获得空白。
public class ScannerInfo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用next方式接收:");
        //判断用户有没有输入字符串
        if(scanner.hasNext()){
            //使用next方式接收
            String str = scanner.next();
            System.out.println("输出的内容为:"+str);
        }
        //要养成关掉IO流(输入输出流)的习惯,否则会一直占用资源
        scanner.close();
    }
public class ScannerInfo2 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextLine方式接收:");
        //判断下一行是否有输入
        if (scanner.hasNextLine()){
            String str = scanner.nextLine();
            System.out.println("输出的内容为:" + str);
        }
        scanner.close();
    }
}

2.hasNextInt(),hasNextFloat()
可以用来判断输入的是否是 整数||小数。
3.hasNextDouble的运用

public class ScannerInfo3 {
    public static void main(String[] args) {
        //我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果:
        Scanner scanner = new Scanner(System.in) ;
        //和
        double sum = 0;
        //计算输入了多少个数字
        int m = 0;
        //通过循环判断是否还有输入,并在里面对每一次进行求和和统计
        while (scanner.hasNextDouble()) {
            double x = scanner.nextDouble();
            m = m + 1;//m++
            sum = sum + x;
        }
        System.out.println(m+"个数的和为:"+sum);
        System.out.println(m+"个数的平均值是"+(sum / m));
            scanner.close();

        }
}

二、循环
1.while
2.do while
3.for循环

  • 关于for循环有以下几点说明:
    • 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
    • 然后,检测布尔表达式的值。如果为 true,循环体被执行。*如果为false,循环终止,开始执行循环体后面的语句。执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
    • 再次检测布尔表达式。循环执行上面的过程。

通过for循环实现99乘法表

public class For99 {
    public static void main(String[] args) {
         for (int i=1;i<=9;i++){
             for (int j=1;j<=i;j++){
                 System.out.print(i+"*"+j+"="+(i*j)+"   ");
                 
                 if(j==i){
                     System.out.println();
                 }
             }
         }
    }
}

for循环的高级使用:

public class ForPlus {
    public static void main(String[] args) {
        int[] numbers = {10,20,30,40};

        //遍历数组中的元素
        for(int i = 0; i<4 ; i++){
            System.out.println(numbers[i]);
        }
        System.out.println("==============");
        for (int x:numbers){
            System.out.println(x);
        }
    }
}
输出结果:
10
20
30
40
==============
10
20
30
40

三、break,continue,goto关键字

  • break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)
  • continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
  • 关于goto关键字
    • goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子——带标签的break和continue。
    • “标签”是指后面跟一个冒号的标识符,例如: label:
    • 对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值