Java流程控制(一)
2022/1/14 22:03:41
本文主要是介绍Java流程控制(一),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java流程控制(一)
Scanner类
-
作用:
-
可以通过Scanner类获取用户输入
Scanner s = new(System.in);//将用户输入赋值给s
-
使用next()或nextLine()方法获取输入的字符串
-
在读取前一般用hasNext()与hasNextLine()判断是否还有 输入的数据
-
用完scanner之后要调用close()方法关掉(节省资源)
public class Demo1 { public static void main(String[] args) { Scanner s = new Scanner(System.in);//将用户输入赋值给s //通过hasNext每次判断是否有句子输入 if(s.hasNext()){ String str = s.next();//识别一句,识别完一句之后光标移动到下一句,当再次用next()时会识别下一句 System.out.println("输出内容为:"+str); } s.close();//用完之后要关掉 } } 输入:sxw 输出: 输出内容为:sxw
public class Demo1 { public static void main(String[] args) { Scanner s = new Scanner(System.in);//将用户输入赋值给s //进行循环,每次判断是否还有句子,当没有句子时结束 while(s.hasNext()){ String str = s.next();//识别一句,识别完一句之后光标移动到下一句,当再次用next()时会识别下一句 System.out.println("输出内容为:"+str); } s.close();//用完之后要关掉 } } 输入:ad fs gg 输出: 输出内容为:ad 输出内容为:fs 输出内容为:gg
-
-
-
方法:
-
next():
- 只有读到有效字符后才能结束输入
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。(例:” sss“会成为"sss")
- 对输入有效字符之后遇到的空白,会被作为分隔符或结束符。(例:”a1 b2 c3“会成为"a1" "b2" "c3")
- next()不能得到带有空格的字符串
-
nextLine():
-
以Enter(回车)为结束符,也就是说nextLine()方法返回的是输入字符前的所有字符
-
可以获得空白
public class Demo1 { public static void main(String[] args) { Scanner s = new Scanner(System.in); if (s.hasNext()){ String str=s.nextLine(); System.out.println("输出内容为:"+str); } s.close();//用完之后要关掉 } } 输入:ad fs gg 输出: 输出内容为:ad fs gg
public class Demo2 { public static void main(String[] args) { Scanner s = new Scanner(System.in); String str=s.nextLine(); System.out.println("输出内容为:"+str); s.close();//用完之后要关掉 } } 输入:ad fs gg 输出: 输出内容为:ad fs gg
-
hasNext():判断是否有数据输入
-
hasNextInt():判断是否有整数输入
-
hasNextDouble():判断是否有Double数据输入
-
hasNext..():判断是否有..数据输入(..中可以填入Int、Double等等)
-
next():读字符串(String类型)
-
nextDouble():读Double类型数据
-
nextInt():读Int类型数据
-
next..():读..类型数据
-
例:输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果:
//我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果 import java.util.Scanner; public class Demo2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); double sum = 0; int num=0; //scanner.hasNextDouble()判断是否有Double类型的数据输入,如果不是Doule类型(比如x),则跳出循环 while(scanner.hasNextDouble()){ sum+=scanner.nextDouble(); num++; } scanner.close(); System.out.println("总和为:"+sum); System.out.println("平均数为:"+(sum/num)); } } 输入: 20 30 40 x 输出: 总和为:90.0 平均数为:30.0
-
-
这篇关于Java流程控制(一)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-12百万架构师第十五课:源码分析:Spring 源码分析:SpringMVC核心原理及源码分析|JavaGuide
- 2025-01-11有哪些好用的家政团队管理工具?
- 2025-01-11营销人必看的GTM五个指标
- 2025-01-11办公软件在直播电商前期筹划中的应用与推荐
- 2025-01-11提升组织效率:上级管理者如何优化跨部门任务分配
- 2025-01-11酒店精细化运营背后的协同工具支持
- 2025-01-11跨境电商选品全攻略:工具使用、市场数据与选品策略
- 2025-01-11数据驱动酒店管理:在线工具的核心价值解析
- 2025-01-11cursor试用出现:Too many free trial accounts used on this machine 的解决方法
- 2025-01-11百万架构师第十四课:源码分析:Spring 源码分析:深入分析IOC那些鲜为人知的细节|JavaGuide