Java 哈希表中的空对象
当我尝试Java 哈希表中的空对象,java,Java,当我尝试map.get(k)哈希表中的索引时,它返回null,并且想知道它是否是我的csv到哈希表的代码 public static void main(String[] args) throws ParseException, IOException { BufferedReader br = new BufferedReader(new FileReader("primes.csv")); String line = null; Hashtable<Stri
map.get(k)
哈希表中的索引时,它返回null
,并且想知道它是否是我的csv到哈希表的代码
public static void main(String[] args) throws ParseException, IOException {
BufferedReader br = new BufferedReader(new FileReader("primes.csv"));
String line = null;
Hashtable<String, String> map = new Hashtable<String, String>(100);
while((line = br.readLine()) != null){
String str[] = line.split(",");
map.put(str[0], str[1]);
}
br.close();
System.out.println(map);
int k;
k = Integer.parseInt(JOptionPane.showInputDialog(f,"Enter an integer k whee"
+ " 3 < k < 1229: "));
while (k <= 3 || k >= 1229){
k = Integer.parseInt(JOptionPane.showInputDialog(f,"Sorry try again: "));
}
JOptionPane.showMessageDialog(f, "The "+ k +"th prime number is " + map.get(k));
}
publicstaticvoidmain(字符串[]args)抛出ParseException、IOException{
BufferedReader br=新的BufferedReader(新文件读取器(“primes.csv”);
字符串行=null;
哈希表映射=新哈希表(100);
而((line=br.readLine())!=null){
字符串str[]=line.split(“,”);
map.put(str[0],str[1]);
}
br.close();
系统输出打印项次(map);
int k;
k=Integer.parseInt(JOptionPane.showInputDialog)(f,“输入整数k whee”
+“3
我的csv文件还包含
1,1(下一行)
2,2(下一行)
3,3(下一行)
4、5(下一行)
5、7等等
您在地图中使用
String
键,并希望使用Integer
键从地图中检索对象:
String str[] = line.split(",");
...
map.put(str[0], str[1]);
...
int k;
...
map.get(k);
这是不可能的。就
equals()
而言,它们并不相等。
因此,在这两种情况下,使用与密钥相同的类型。
例如,要在这两种情况下都使用
String
,请通过以下方式更改get()
调用:
map.get(String.valueOf(k));
此外,Hashtable
是一个线程安全类(效率也不高)。您不需要在代码示例中使用此功能。
一个
HashMap
就足够了。您在地图中使用String
键,并且希望使用Integer
键从地图中检索对象:
String str[] = line.split(",");
...
map.put(str[0], str[1]);
...
int k;
...
map.get(k);
这是不可能的。就
equals()
而言,它们并不相等。
因此,在这两种情况下,使用与密钥相同的类型。
例如,要在这两种情况下都使用
String
,请通过以下方式更改get()
调用:
map.get(String.valueOf(k));
此外,Hashtable
是一个线程安全类(效率也不高)。您不需要在代码示例中使用此功能。
一个HashMap就足够了。请正确设置代码的格式请正确设置代码的格式谢谢你,我也这么认为,但是教授需要一个hashtable不客气。真遗憾。谢谢你,我也有同样的想法,但是教授需要一个哈希表,不客气。真遗憾。当你拿到东西的时候,它对你来说很好。