Scanner对象
通过Scanner类来获取用户的输入
基本语法:Scanner s = new Scanner(System.in);
next()
-
一定要读取到有效字符后才可以结束输入
-
对输入有效字符之前遇到的空白,next()方法会自动将其去掉
-
只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
-
next()不能得到带有空格的字符串
Scanner scanner = new Scanner(System.in); System.out.printIn("使用next方式接收:"); if(scanner.hasNext() ){ String str = scanner.next(); System.out.printIn("输出的内容为:"+str);
Scanner scanner=new Scanner(System.in); int i=0; float f=0.0f; System.out.println("请输入整数:"); if (scanner.hasNextInt()) { i = scanner.nextInt(); System.out.println("整数数据:"+i); }else { System.out.println("输入的不是整数数据!"); }
nextLine()
1.以Enter为结束符
2.可以获得空白
Scanner s = new Scanner(System.in); System.out.printIn("请输入数据:"); String str = scanner.nextLine(); System.out.printIn("输出的内容为:"+str); scanner.close()
顺序结构
任何一个算法都离不开的一种基本结构
选择结构
-
if单选择结构
if(布尔表达式){ //如果布尔表达式为true将执行语句 }
-
if双选择结构
if(布尔表达式){ //如果布尔表达式为true将执行语句 }else{ //如果布尔表达式为false将执行语句 }
-
if多选择结构
if(布尔表达式 1){ //如果布尔表达式 1 的值为true将执行语句 }else if(布尔表达式 2){ //如果布尔表达式 2 的值为true将执行语句 }else if(布尔表达式 3){ //如果布尔表达式 3 的值为true将执行语句 }else{ //如果以上布尔表达式为false将执行语句 }
-
嵌套的if结构
if(布尔表达式 1){ ///如果布尔表达式 1 的值为true执行代码 if(布尔表达式 2){ ///如果布尔表达式 2 的值为true执行代码 } }
-
switch多选择结构
switch(expression){//匹配一个具体的值 case value://case穿透 //语句 break;//可选 case value: //语句 break;//可选 //可以有任意数量的case语句 default://可选 //语句 }
switch语句中的变量类型可以是:
-
byte,short,int或者char
-
从Java SE 7开始,switch支持字符串String类型
-
同时case标签必须为字符串常量或字面量
循环结构
-
-
while循环
while(布尔表达式){ //循环内容 }
只要布尔表达式为true,循环就会一直执行下去。
我们大多数情况会让循环停止下来,我们需要一个表达式失效的方式来结束循环。
-
do...while循环
do{ //代码语句 }while(布尔表达式);
do while循环不满足条件时,循环至少会执行一次。
-
for循环
for(初始化;布尔表达式;更新){ //代码语句 }
for循环语句是支持迭代的一种通用结构,是最有效,最灵活的循环结构。