用户交互Scanner
1.Scanner对象
创建Scanner对象的基本语法:
import java.util.Scanner;
...
Scanner s = new Scanner(System.in);
2.next & nextLine
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
//判断用户还有没有输入字符串
if( Scanner.hasNext() ){
String str = scanner.next();
System.out.println("输入内容:" + str);
}
scanner.close(); //关闭。如果不关闭会一直占用资源。
}
输入Hello World!,结果只输出了Hello。
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
//判断用户还有没有输入字符串
if( Scanner.hasNextLine() ){
String str = scanner.nextLine();
System.out.println("输入内容:" + str);
}
scanner.close(); //关闭。如果不关闭会一直占用资源。
}
输入Hello World!,结果输出了Hello World!。
next()与nextLine()的区别:
next() | nextLine() |
---|---|
遇到空格后,只输入空格前的,空格后直接去掉 | 输入回车之前的所有字符 |
不能得到带有空格的字符串 | 可以获得空白 |
3.其他方法
输入整数、浮点数:
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int i = 0;
float f = 0.0f;
System.out.println("输入整数:");
//判断输入的是不是整数
if( scan.hasNextInt() ){
i = scan.nextInt(); //接收整数
}else{
System.out.println("输入的不是整数!");
}
//判断输入的是不是浮点数
if( scan.hasNextFloat() ){
f = scan.nextFloat(); //接收小数
}else{
System.out.println("输入的不是小数!");
}
scanner.close(); //关闭。如果不关闭会一直占用资源。
}
输入多个数字求和与平均数:
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
double sum = 0;
int m = 0;
while( scan.hasNextDouble() ){
double x = scan.nextDouble();
m = m + 1;
sum = sum + x;
}
System.out.println(m + "个数的和为:" + sum);
System.out.println( m + "个数的平均值是:" + (sum/m) );
scanner.close(); //关闭。如果不关闭会一直占用资源。
}
4.感想
今天中午去取快递,很冷,落叶满地,阴风怒号,很是凄凉萧瑟。突然想起了一篇初中课文中节选的一首诗:李华的《吊古战场文》。想必学校的秋风秋景的黯然凄楚不及当时古战场之万一,但亦让人感觉抑郁不适,而当时的大漠茫茫,百姓*,又是多么让人伤心啊!
(附李华《吊古战场文》)
浩浩乎,平沙无垠,夐不见人。河水萦带,群山纠纷。黯兮惨悴,风悲日曛。蓬断草枯,凛若霜晨;鸟飞不下,兽铤亡群。亭长告余曰:“此古战场也,常覆三军。往往鬼哭,天阴则闻。”
伤心哉!秦欤汉欤,将近代欤?吾闻夫齐魏徭戍,荆韩召募。万里奔走,连年暴露。沙草晨牧,河冰夜渡。地阔天长,不知归路。寄身锋刃,腷臆谁愬?秦汉而还,多事四夷,中州耗斁,无世无之。古称戎夏,不抗王师。文教失宣,武臣用奇。奇兵有异于仁义,王道迂阔而莫为。
呜呼噫嘻!吾想夫北风振漠,胡兵伺便。主将骄敌,期门受战。野竖旌旗,川回组练。法重心骇,威尊命贱。利镞穿骨,惊沙入面,主客相搏,山川震眩。声析江河,势崩雷电。至若穷阴凝闭,凛冽海隅,积雪没胫,坚冰在须。鸷鸟休巢,征马踟蹰。缯纩无温,堕指裂肤。当此苦寒,天假强胡,凭陵杀气,以相剪屠。径截辎重,横攻士卒。都尉新降,将军复没。尸踣巨港之岸,血满长城之窟。无贵无贱,同为枯骨。可胜言哉!
鼓衰兮力竭,矢尽兮弦绝,白刃交兮宝刀折,两军蹙兮生死决。降矣哉,终身夷狄;战矣哉,暴骨沙砾。鸟无声兮山寂寂,夜正长兮风淅淅。魂魄结兮天沉沉,鬼神聚兮云幂幂。日光寒兮草短,月色苦兮霜白。伤心惨目,有如是耶!
吾闻之:牧用赵卒,大破林胡,开地千里,遁逃匈奴。汉倾天下,财殚力痡。任人而已,岂在多乎!周逐猃狁,北至太原。既城朔方,全师而还。饮至策勋,和乐且闲。穆穆棣棣,君臣之间。秦起长城,竟海为关。荼毒生民,万里朱殷。汉击匈奴,虽得阴山,枕骸徧野,功不补患。
苍苍蒸民,谁无父母?提携捧负,畏其不寿。谁无兄弟?如足如手。谁无夫妇?如宾如友。生也何恩,杀之何咎?其存其没,家莫闻知。人或有言,将信将疑。悁悁心目,寝寐见之。布奠倾觞,哭望天涯。天地为愁,草木凄悲。吊祭不至,精魂无依。必有凶年,人其流离。呜呼噫嘻!时耶命耶?从古如斯!为之奈何?守在四夷。