我有一个换行符。我想将该字符串转换为数组,并且对于每个新行,跳转数组中的一个索引位置。
如果输入为:
100
200个
300
然后我需要输出:
110
210个
310
我使用了以下代码:
public class NewClass {
public static void main(String args[]) throws IOException {
BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
String [] arrOfStr = str.split("\n");int b=0;
for (String a : arrOfStr) {
b=Integer.parseInt(a);
int c=b+10;
System.out.println(c);
}
}
}
但它没有提供所需的输出。 注意:我们没有从文本文件中获取输入。我们不知道测试用例中有多少输入。我们一次接受投入。
答案 0 :(得分:0)
您可以使用scanner.hasNext()
代替 -
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// scanner.useDelimiter("\\r\\n"); // if required to delimit the input
while (scanner.hasNext()) {
int c = Integer.parseInt(scanner.next()) + 10;
System.out.println(c);
}
}
使用与您相同的输入 -
100 200 300
输出将是 -
110 210 310
答案 1 :(得分:0)
详细说明我的评论。
List<Integer> intList = new ArrayList<Integer>();
BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
while (!str.isEmpty()) {
intList.add(Integer.parseInt(str)+10);
str=br.readLine();
}
System.out.println(intList);}
这应该有用,我在打电话......