首先,我是初学者,但我觉得我有点理解。
我正在尝试编写一个将用户输入存储到字符串中的方法。它工作得很好,除非用户放入空间。然后字符串停止存储。
public static String READSTRING() {
Scanner phrase = new Scanner(System.in);
String text = phrase.next();
return text;
}
我认为问题是,一旦检测到空格,phrase.next()会停止扫描,但我想将该空格存储在字符串中并继续存储该短语。这是否需要某种循环来保存它?
答案 0 :(得分:3)
使用.nextLine()
代替.next()
。
.nextLine()
将输入您的输入,直到找到换行符(当您按Enter键时,会添加换行符)。这基本上允许您获得一行输入。
答案 1 :(得分:1)
从Javadoc开始,这就是我们所拥有的:
扫描程序使用分隔符模式将其输入分解为标记,分隔符模式默认匹配空格。
您可以按照他人的建议使用phrase.nextLine()
,也可以使用Scanner#useDelimiter("\\n")
。
答案 2 :(得分:0)
试试phrase.nextLine();
。如果我没记错的话,Scanner会自动使用空格作为分隔符。
答案 3 :(得分:0)
尝试
pharse.NextLine();
你得到一个有限词的数组
String Stringname = {"word","word2"};
Random f = new Random(6);
Stringname = f.nextInt();
您可以将整数转换为字符串
int intvalue = 6697;
String Stringname = integer.ToString(intvalue);