1.用户交互Scanner(扫描仪)
- 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户 的输入。java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。
- 基本语法
scanner s = new Scanner(System.in);
- 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要 使用hasNext()与hasNextLine()判断是否还有输入的数据
- next()
- nextLine()
-
next()
-
- 一定要读取到有效字符后才可以结束输入。
-
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
-
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
-
- next()不能得到带有空格的字符串。
-
nextLine():
-
- 以Enter为结束符也就是说nextLine()方法返回的是输入回车之前的所有字符
-
- 可以获得空白
2.Scanner进阶使用
我们可以输入多个数字,并求其总和与平均数,没输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
3.顺序结构
if选择结构
- if单选择结构
- 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
- 语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
- if双选择结构
- 那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求用一个if就搞不定了,我们需要有两个判断,需要一个双选择结构,所以就有了if-else结构
- 语法
if(布尔表达式){
//如果不二表达式的值了true
}else{
//如果布尔表达式的值为false
}
- if多选择结构
- 我们发现刚才的代码不符合实际情况,真实的情况还可能存在ABCD,存在区间多级判断。比如90-100就是A,80-90就是B…等等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!
- 嵌套的if结构