在输入中取第二个单词



我正在尝试制作一个计算器来帮助我完成物理作业。为此,我试图将其分为两部分,因此键入"波长 18"会将其拆分为"波长"和"18"作为数值。

我理解得到我可以使用的第一个单词

   String variable = input.next();

但是有没有办法阅读空间之后的内容?

谢谢。

String[] parts = variable.split(" ");
string first = parts[0];
string second = parts[1];
String entireLine = input.nextLine();
String [] splitEntireLine = entireLine.split(" ");
String secondString = splitEntireLine[1];

假设您可能也有三个单词或只有一个单词,最好不要依赖数组。所以,我建议在这里使用列表:

final String inputData = input.next();
//Allows to split input by white space regardless whether you have
//"first   second" or "first second"
final Pattern whiteSpacePattern = Pattern.compile("\s+");
final List<String> currentLine = whiteSpacePattern.splitAsStream(inputData)
.collect(Collectors.toList());

然后,您可以执行各种检查,以确保列表中具有正确数量的值并获取数据:

//for example, only two args
if(currentLine.size() > 1){
   //do get(index) on your currentLine list
 }

相关内容

  • 没有找到相关文章

最新更新