说,我有一个类似的数组,
{"A", "1", "B", "2", "C", "3"}
我想把它HashMap
配对,我尝试了几种方法,但似乎都不起作用。我创建了一个方法 isDigit() 来检查一个项目是否是数字,
private static boolean isDigit(String str){
try {
Integer.parseInt(str);
}
catch (NumberFormatException nfe){
return false;
}
return true;
}
然后我尝试分成 2 个数组,数字和字母。
for (int i = 0; i <= parts.length; i++) {
if (isDigit(parts[i])) {
numbers[i] = parts[i];
} else {
abcs[i] = parts[i];
}
}
最后,
for (int i = 0; i < numbers.length ; i++) {
map.put(abcs[i], numbers[i]);
}
我打印它们,
for (String each: map.keySet()) {
System.out.println(each + ":" + map.get(each));
}
打印出类似的东西,
1
A : null
2
B : null
它应该打印的是,
A : 1
B : 2
C : 3
为什么不parts
通过增加2
s 中的循环计数器来遍历in 对:
for (int i = 0; i < parts.length -1; i += 2) {
map.put(parts[i], parts[i + 1]);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句