我正在尝试扫描以下字符串并保存到名为"推文的字符串变量中。" :
" #typ offer; #det免费必备用品4个evacs宠物。 #loc 2323年第55届,巨石; #lat 40.022; #lng -105.226;"
然而,当我打印最终的推文字符串时,它只保存第一行,一直到#loc。它不包括2323年第55个巨石; #lat 40.022; #lng -105.226;"字符串的一部分。还有什么东西除了nextLine()我应该使用??这是我的代码和输出。
Scanner scan = new Scanner(System.in);
String tweet = null;
String type, detail, location, latitude, longitude = null;
int start, finish = 0;
tweet = scan.nextLine();
System.out.println(tweet);
我得到的输出是:" #typ offer; #det免费必备用品4个evacs宠物。 #loc
然而它缺少字符串的第二部分。可能是一个非常简单的修复,但感谢先进的帮助。
答案 0 :(得分:0)
您好像在使用scan.next();
,而不是scan.nextLine()
。也许这是一个错字,但如果这是代码,请尝试更改它。
答案 1 :(得分:0)
使用
tweet = scan.nextLine();
它会起作用。
答案 2 :(得分:0)
if
方法从此扫描程序中找到并返回下一个完整的标记(直到它到达它将结束的第一个空格)。
输出将是:
scan.next();
您需要使用"#typ
,
如果您使用scan.nextLine();
输出将是:
nwxtLine()
阅读doc。
答案 3 :(得分:0)
您正在使用next()
来提供下一个令牌。您应该使用的是nextLine()
,它将为您提供全部线路。
编辑:
你说使用nextLine()
无效,这很奇怪,因为它有效。你确定你没有复制和粘贴句子吗?也许它有CRLF
。试着写下这句话。