Java流程控制

Scanner对象

基本语法

Scanner scanner=new Scanner(System.in);

通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。

  1. next()方法:

    • next()不能得到带有空格的字符串
      package com.baidu.scanner;
      import java.util.Scanner;
      public class Demo01 {
      public static void main(String[] args) {
      //创建一个扫描器对象,用于接收键盘数据
      Scanner scanner = new Scanner(System.in);
      System.out.println(“使用next方式接收:”);
      //使用next()方式接收
      String str1=scanner.next();
      System.out.println(“输出内容为:”+str1);
      scanner.close();
      }
      }
  2. nextLine()方法:

    • 以Enter结束符,也就是说next Line()方法返回的是输入回车之前的所有字符;
    • 可以获得空白;
      package com.baidu.scanner;
      import java.util.Scanner;
      public class Demo02 {
      public static void main(String[] args) {
      //创建一个扫描器对象,用于接收键盘数据
      Scanner scanner = new Scanner(System.in);
      System.out.println(“使用nesxtline()方法接收:”);
      //使用nextLine()方式接收
      String str2=scanner.nextLine();
      System.out.println(“输出内容为:”+str2);
      scanner.close();
      }
      }

举一个栗子

输入多个数字 并求其和与平均数 通过非数字来结束输入并执行输出结果。

package com.baidu.scanner;
import java.util.Scanner;
public class Demo04 {
    public static void main(String[] args) {
        //输入多个数字 并求其和与平均数 通过非数字来结束输入并执行输出结果
        Scanner scanner = new Scanner(System.in);
        double sum=0;
        int count=0;
        System.out.println("输入数据");
        while (scanner.hasNextDouble()){
            double x = scanner.nextDouble();
            sum+=x;
            count++;
            System.out.println("你输入了第"+count+"个数据,当前结果是sum="+sum);
        }
        System.out.println(count+"个数字总和为"+sum);
        System.out.println(count+"个数字平均数为"+(sum/count));
        scanner.close();
    }
}

顺序结构

  • Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
  • 语句与语句之间是按从上到下的顺序进行的,它是任何一个算法都离不开的一种基本结构。

选择结构

if单选择结构

if(条件1){
  ```
}

if双选择结构

if(条件1){
  ```
}else{
  ```
}

if多选择结构

if(条件1){
  ```
}else if(条件2){
  ```
}else if(条件3){
  ````
}else{
  ```
}

Switch结构

switch case语句中的变量类型可以是:

  1. byte,short,int或者char;

  2. **从JavaSE 7开始 switch支持字符串String类型了;

  3. 同时case标签必须为字符串常量或者自变量 ;

    switch(experssion){
    case value1:
    //语句
    break;//可选
    case value2:
    //语句
    break;//可选
    default://可选
    //语句
    }

循环结构

while循环

while(条件){
  //循环体
}

do while循环(至少执行一次)

do{
  //循环体
}while(条件);

For循环

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

三个栗子

  1. 输出1-1000之间能被5整除的数 且每行输出3个
    package com.baidu.scanner;
    //输出1-1000之间能被5整除的数 且每行输出3个
    public class Demo06 {
    public static void main(String[] args) {
    int count=0;
    for (int i=1;i<=1000;i++){
    if (i%50){
    count++;
    System.out.print(i+"\t");
    }
    if (count
    3){
    System.out.println();
    count=0;
    }
    }
    }
    }
  2. 打印九九乘法表
    package com.baidu.scanner;
    //打印九九乘法表
    public class Demo07 {
    public static void main(String[] args) {
    for (int m = 1; m <=9; m++) {
    for (int n = 1; n <=9; n++) {
    if (n<=m){
    System.out.print(n+""+m+"="+(mn)+"\t");
    }
    }
    System.out.println();
    }
    }
    }
  3. 打印三角形
    package com.baidu.scanner;
    public class Demo10 {
    public static void main(String[] args) {
    for (int i = 1; i <=5; i++) {
    for (int j=5;j>=i;j–){
    System.out.print(" “);
    }
    for (int j=1;j<=i;j++){
    System.out.print(”");
    }
    for (int j=1;j<i;j++){
    System.out.print("
    ");
    }
    System.out.println();
    }
    }
    }

增强for循环

这里先见一面 举个栗子:

package com.baidu.scanner;
public class Demo08 {
    public static void main(String[] args) {
        int numbers[]={1,2,3,4,5};//定义了一个数组
        //遍历数组的元素
        for (int x:numbers){
            System.out.println(x);
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值