【发布时间】:2020-03-25 17:03:49
【问题描述】:
我想将字符串作为用户的输入,直到“#”是输入,即一系列字符串(都在不同的行中),直到找到“#”并将字符串存储在字符串类型的数组列表中。我用 JAVA 编写了这段代码,但它没有按要求工作。
导入 java.util.ArrayList; 导入 java.util.Scanner;
公共类 wordMetaMorphism {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
ArrayList<String> input = new ArrayList<String>();
while(!(sc.next().equals("#"))) {
String s = sc.next();
input.add(s);
}
System.out.println(input);
}
}
我得到这个输出,其中只有备用字符串被存储。我也试过 sc.nextLine() 但都是一样的。
输入 - 倾角 唇 疯狂的 地图 枫 可能 软垫 点子 荚 流行音乐 树液 啜 片 光滑的 香料 戳 股票 # #
输出 - [lip, map, may, pip, pop, sip, slick,stick, #]
【问题讨论】:
-
sc.next()获取下一个令牌。每次调用它。不是您在上一次调用sc.next()时读到的那个。变量是你的朋友。
标签: java arrays string eclipse while-loop