Map接口 映射 沒有順序
???-|HashMap 管理鍵值對
???-|ConcurrentMap 線程安全
???-|LinkedHashMap
key:鍵
value:值
MyClass.java
class Person{
int age;
int score;
String name;
public Person (int age, int score, String name) {
this.age = age;
this.score = score;
this.name = name;
}
@Override
public String toString() {
return "Person" +
"age=" + age +;
}
}
public class MyClass {
public static void main(String[] agrs) {
Map<String, Person> map = new HashMap<>();
//添加一個鍵值對
map.put(k: "jack", new Person(age: 30, score: 98, name: "jack"));
map.put(k: "merry", new Person(age: 32, score: 62, name: "merry"));
//獲取鍵值對的個數(shù)
System.out.println(map.size());
//是否包含某一個key
System.out.println(map.containsKey(o: "jack232"));//false
//判斷是否包含某個value
System.out.println(map.containsValue(person));
//獲取某個key對應(yīng)的value
Person p = map.get("jack");
System.out.println("jack:"+p);//jack:person{age=30, score=98, name='jack'}
//刪除某個鍵值對
map.remove(o: "jack");
//替換某個鍵值對
map.replace(k: "jack", new Person(age: 32, score: 32, name: "張三"));
System.out.println(map);//jack=Person{age=32, score=32, name='張三'}
//清空
map.claer();
//map遍歷
Set<Map.Entry<String, Person>> entries = map.entrySet();
for (Map.Entry<String, Person> entry: entries){
System.out.println("key:"+entry.getKey()+" value:"+entry.getValue());
}
}