22bl_java基础流程控制

Java流程控制

1用户交互Scanner

Java提供了一个工具类,可以获取用户的输入。java.util.Scanner是Java5的新特征,可以通过Scanner类来获取用户的输入。

1.1基本语法

//扫描器对象,接收键盘数据
Scanner s=new Scanner(System.in);

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

1.2测试

scanner.hasNextInt();//判断输入是否int
scanner.hasNextDouble;//判断输入是否double
structure中可以看某个类中方法列表 

1.3使用next方式接收

//创建一个扫描器对象,用于接收键盘数据
        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();

使用next方式接收
hellow word
输出的内容为:hellow

1.4使用nextLine方式接收

 Scanner scanner=new Scanner(System.in);

        System.out.println("使用nextLine方式接收");
        //判断用户有没有输入字符串
        if(scanner.hasNextLine()){
            String str=scanner.nextLine();
            System.out.println("输出的内容为:"+str);
        }
        scanner.close();

使用nextLine方式接收
hellow word
输出的内容为:hellow word

1.5区别

image-20221121155245545

2顺序结构switch

switch语句中的变量类型可以是:byte、short、int、char。从Java SE7开始,支持String类型;

case标签必须为字符串常量(‘ ’括起来的)、字符串字面量(“”括起来的字符序列);

反编译: java----class(字节码文件)----反编译(IDEA等工具);

项目结构->Project complier output->idea通过打开文件引入.class实现反编译(复制粘贴行不通)。

3循环结构for

虽然所有循环结构都可以用while或者do…while表示,但Java提供了另一种语句for循环,使一些循环结构变得更加简单。

3.1特性

for循环语句时支持迭代的一种通用结构,是最有效、最灵活的循环结构;

for循环执行的次数是在执行前就确定的;

3.2普通for循环

for(初始化;布尔表达式;更新){循环体}
//100.for快捷生成
for(int i=0;i<100;i++){}

3.3增强for循环

Java5引入了一种主要用于数组或集合的增强型for循环。

for(声明语句:表达式){}
//声明语句:声明新的局部变量,类型必须和数组元素的类型匹配。作用域限定在循环语句块,其值与此时数组元素的值相等
//表达式:要访问的数组名,或者返回值为数组的方法
int[] number={1,2,3,4,5};//定义一个数组
for(int x:numbers){
    System.out.println(x);
}

3.4break continue

goto虽然是Java的保留字,但并未在语言中等到正式使用;Java没有沟通。可以使用带标签(例如 lable:)的break和continue。

对Java来说唯一用到标签的地方是在循环语句之前。理由:break(退出循环)与continue(终止某次循环)通常只中断当前循环,但随标签使用时,就会中断到存在标签的地方。

outer:for(int i=0;i<100;i++){
    for(int j=2;j<i/2;j++){
        if(i%j==0){
            continue outer;//会从内部循环跳到外部循环,不建议使用带标签的
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值