TreeMap如何键盘输入字符串
时间: 2024-05-11 19:14:39 浏览: 53
由于TreeMap是一个键值对映射的数据结构,它的键必须是可比较的,因此无法直接输入字符串作为键。如果需要根据输入的字符串进行操作,可以先将字符串转换为可比较的类型,例如使用字符串的哈希值作为键,或者定义一个比较器来对字符串进行排序后作为键。以下是一个示例代码,演示如何使用字符串的哈希值作为键:
```
import java.util.*;
public class TreeMapExample {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
TreeMap<Integer, String> map = new TreeMap<>();
while (true) {
System.out.println("Enter a string:");
String input = sc.nextLine();
if (input.equals("exit")) break;
int key = input.hashCode();
map.put(key, input);
System.out.println("Added \"" + input + "\" with key " + key);
}
System.out.println("Map contents:");
for (Map.Entry<Integer, String> entry : map.entrySet()) {
System.out.println(entry.getKey() + " -> " + entry.getValue());
}
}
}
```
运行上述代码后,可以不断输入字符串并将其添加到TreeMap中,直到输入"exit"退出程序。每输入一个字符串,程序会输出该字符串的哈希值作为键,并显示已添加的键值对。程序结束后,会输出TreeMap中所有键值对的内容。
阅读全文