Java 哈希表,带有 while 循环
Java hashtable, with a while loop
这就是我所需要的,也是我得到的。
将数字 3 到 10 添加到散列 table
提示用户输入一个字符串,并显示相应的数字。
使用循环和单个 println 语句,在 table 中显示所有值(字符串和整数)。
我的主要问题是我不确定如何处理 while 循环。我只使用过一次 while 循环。
import java.util.*;
class HTDemo {
public static void main(String args[]) {
Hashtable<String, Integer> numbers = new
Hashtable<String, Integer>();
numbers.put("one", new Integer(1));
numbers.put("two", new Integer(2));
numbers.put("three", new Integer(3));
numbers.put("four", new Integer(4));
numbers.put("five", new Integer(5));
numbers.put("six", new Integer(6));
numbers.put("seven", new Integer(7));
numbers.put("eight", new Integer(8));
numbers.put("nine", new Integer(9));
numbers.put("ten", new Integer(10));
String number;
Scanner input = new Scanner(System.in);
System.out.println("Enter a number in word form: (Example: Five, Six, Seven): ");
number = input.next();
while () {
System.out.println("You entered: " + number + "\nwhich is the interger: " + numbers);
}
}
}
这是我得到的,与说明不符:
Enter a number in word form: (Example: Five, Six, Seven):
five
You entered: five
which is the integer: {three=3, six=6, ten=10, seven=7, nine=9, one=1, five=5, four=4, two=2, eight=8}
Scanner input = new Scanner(System.in);
System.out.println("Enter a number in word form: (Example: Five, Six, Seven): ");
// wait for input
String number = input.next();
// display value, using Map#get method
System.out.println(String.format("You've entered %s which is integer %s", number, numbers.get(number)));
// iterate over map entries using for (not while) loop
for (Map.Entry<String, Integer> e : numbers.entrySet()) {
System.out.println(String.format("Number:%s, integer:%s", e.getKey(), e.getValue()));
}
顺便说一句,你不应该忘记字符串是区分大小写的,我。 e. numbers.get("Seven")
会 return null
,因为你放的是 "seven"
,而不是 "Seven"
。
这就是我所需要的,也是我得到的。 将数字 3 到 10 添加到散列 table 提示用户输入一个字符串,并显示相应的数字。 使用循环和单个 println 语句,在 table 中显示所有值(字符串和整数)。 我的主要问题是我不确定如何处理 while 循环。我只使用过一次 while 循环。
import java.util.*;
class HTDemo {
public static void main(String args[]) {
Hashtable<String, Integer> numbers = new
Hashtable<String, Integer>();
numbers.put("one", new Integer(1));
numbers.put("two", new Integer(2));
numbers.put("three", new Integer(3));
numbers.put("four", new Integer(4));
numbers.put("five", new Integer(5));
numbers.put("six", new Integer(6));
numbers.put("seven", new Integer(7));
numbers.put("eight", new Integer(8));
numbers.put("nine", new Integer(9));
numbers.put("ten", new Integer(10));
String number;
Scanner input = new Scanner(System.in);
System.out.println("Enter a number in word form: (Example: Five, Six, Seven): ");
number = input.next();
while () {
System.out.println("You entered: " + number + "\nwhich is the interger: " + numbers);
}
}
}
这是我得到的,与说明不符:
Enter a number in word form: (Example: Five, Six, Seven):
five
You entered: five
which is the integer: {three=3, six=6, ten=10, seven=7, nine=9, one=1, five=5, four=4, two=2, eight=8}
Scanner input = new Scanner(System.in);
System.out.println("Enter a number in word form: (Example: Five, Six, Seven): ");
// wait for input
String number = input.next();
// display value, using Map#get method
System.out.println(String.format("You've entered %s which is integer %s", number, numbers.get(number)));
// iterate over map entries using for (not while) loop
for (Map.Entry<String, Integer> e : numbers.entrySet()) {
System.out.println(String.format("Number:%s, integer:%s", e.getKey(), e.getValue()));
}
顺便说一句,你不应该忘记字符串是区分大小写的,我。 e. numbers.get("Seven")
会 return null
,因为你放的是 "seven"
,而不是 "Seven"
。