1、使用Scanner获取键盘输入
Scanner 主要提供两个方法来扫描输入
(1)hasNextXxx():是否还有下一个输入项,其中 Xxx 可以是Int 、Long 等代表基本数据类型的字符串,如果只是判断是否包含下一个字符串,则直接使用hasNext()。
(2)nextXxx():获取下一个输入项。Xxx的含义和前面的一样。
在默认情况下,Scanner使用空白(包含空格、Tab空白、回车)作为多个输入项之间的分隔符。
为Scanner设置分隔符使用useDelimiter(String pattern)方法即可。
事实上Scanner提供了两个简单的方法来逐行读取
boolean hasNextLine() 返回输入源中是否还有下一行
String nextLine():返回输入源中下一行的字符串。
2、String StringBuffer 和 StringBuilder 类区别
String类是不可变类 ,即一旦一个String对象被创建以后,包含在这个对象中的字符串序列是不可改变的,直至这个对象被销毁。
StringBuffer 对象则代表一个字符序列可变的字符串,当一个StringBuffer被创建以后,通过StringBuffer提供的append() insert()、reserve() setChartAt()等方法可以改变这个字符串对象的字符序列,一旦通过StringBuffer生成了最终想要的字符串,就可以调用它的toString()方法将其转换为一个String 对象。
StringBuilder ,JDK1.5 新增的类,同StringBuffer
StringBuffer 是线程安全的,而StringBuilder则没有实现线程安全功能,所以性能较高,通常情况下需要创建一个内容可变的字符串对象,则应优先考虑StringBuilder。