为了账号安全,请及时绑定邮箱和手机立即绑定

如何从一行中单独读取字符串

如何从一行中单独读取字符串

慕沐林林 2023-04-26 14:13:46
我希望能够使用空格区分用户的输入,其中他们在一行中输入的每个字符串用于不同的内容。具体来说,他们输入的每个单词都用在我将项目添加到列表的方法中。用户将键入“添加”,然后键入项目的类型和年龄。我只是想弄清楚一些事情,但我迷路了。if (input.equals("add")) {     scan.next(); ??               }在用户键入“添加”后,他们会输入他们想要添加到列表中的车辆的类型和年龄。例如,可以键入“car 7”以便在列表中创建一个新项目,“car”将是它的类型,“7”将是它的年龄。注意:年龄是一个整数。
查看完整描述

2 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

如果用户输入:

7号车

阅读该行所需要做的就是:

String words[] = scan.nextLine().split(" ");

现在你有一个包含该行单词的数组。例如:words[0]将包含汽车,words[1]将包含 7 等。


查看完整回答
反对 回复 2023-04-26
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

您也可以一次阅读它们并更改分隔符。这里有几个例子。


      String text = "The quick brown fox jumped over the lazy dog";

      Scanner scan = new Scanner(text);

      while (scan.hasNext()) {

         System.out.print(scan.next() + " ");

      }

      System.out.println();

而这个改变了单词之间的分隔符。您可以指定一个regular expression pattern或一个简单的String.


      text = "The:quick,+-brown::::fox:.:jumped++over,,,,the,+,+lazy---dog";

      scan = new Scanner(text);

      // regular expression delimiter.  Any combo of one or more of the chars.

      scan.useDelimiter("[:,.;+-]+");

      while (scan.hasNext()) {

         System.out.print(scan.next() + " ");

      }

      System.out.println();


查看完整回答
反对 回复 2023-04-26
  • 2 回答
  • 0 关注
  • 91 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信