java - 将整数添加到 ArrayList 直到到达行尾
问题描述
我有一个file
充满数据的。我想在 to 之后添加哪些integers
,然后将其放入. 读到行尾有什么问题?char
ArrayList
ArrayList
map
我的代码:放入integers
直到ArrayList
找到换行符。
数据:
300 J 2 1 3
900 K 0 2
500 E 4 1
100 F 5
我的代码:
while(scan.next() != "\n") {
indexes.add(scan.nextInt());
}
myMap.put(name.get(i), indexes);
解决方案
你使用了错误的功能
scan.next()
返回:
从此扫描器中查找并返回下一个完整的令牌。一个完整的标记前后是匹配分隔符模式的输入。此方法可能会在等待输入扫描时阻塞,即使先前调用 hasNext() 返回 true。
你!=
用来比较"\n"
是错误的。(如果你想比较,你必须使用String.equals()
。如果你想测试文件结束,你应该使用hasNext()
您不需要直到行尾,scanner.nextLine()
为您阅读整行
while (scan.hasNext()) {
String line = scan.nextLine();
String[] parts = line.split(" ");
for (String part : parts) {
try {
int n = Integer.parseInt(part);
// Add to your list
indexes.add(n);
} catch (Exception ex) {
// log
}
}
}
推荐阅读
- php - 无法在 CircleCi 中生成代码覆盖率
- kubernetes - Kubernetes 中的 .NET 核心 cpu 使用事件计数器值
- node.js - webpack 一直要求我安装 webpack-cli
- node.js - 使用 NodeJS 和 MongoDB 的实时数据馈送
- python - 使用imap检查gmail python中是否不存在pdf附件
- python - 如何将新标记添加到使用句子的 T5 标记器
- python - 即使网络接口关闭,Python 的套接字库也会阻塞
- react-native - React Native CLI - 如何在设备上调试 Redux?
- swift - Swift UIAction 的构造函数采用尾随闭包?
- sql - 如何在postgresql中只保留表的不同行