자바 집합 맵 집합
33237 단어 JavaSE
맵 집합 기능
a: 기능 추가 V put (K key, V value): 요소 추가.이것 은 사실 또 다른 기능 이 있 습 니까?키 가 처음 저장 되 는 것 이 라면 원 소 를 직접 저장 하고 null * 81955 를 되 돌려 줍 니 다. 키 가 처음 존재 하지 않 는 다 면 값 으로 이전 값 을 교체 하고 이전 값 으로 돌아 갑 니 다.값 을 되 돌려 줍 니 다. V get (개체 키): 키 에 따라 값 을 추출 합 니 다. * 8195: Set keyset (): 집합 에 있 는 모든 키 의 집합 을 가 져 옵 니 다. * 8195: Collection values (): 집합 에 있 는 모든 값 의 집합 을 가 져 옵 니 다. * 8195: 길이 기능 * 8195: int size (): 집합 에 있 는 키 쌍 의 대 수 를 되 돌려 줍 니 다. * 8195: HashMap 은 null 키 null 값 을 삽입 할 수 있 습 니 다.
HashMap 의 옮 겨 다 니 는 방법
* 8195: 1, 모든 키 의 집합 을 가 져 옵 니 다. 키 의 집합 을 옮 겨 다 니 며 모든 키 를 가 져 옵 니 다. 키 에 따라 값 을 찾 습 니 다.
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
public class TreeMapBL {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1,"one");
treeMap.put(2,"two");
treeMap.put(3,"three");
Set<Integer> integers = treeMap.keySet();
for (Integer integer : integers) {
String s = treeMap.get(integer);
System.out.println(integer+" "+s);
}
* 8195: 2, 모든 키 값 이 대상 에 대한 집합 을 가 져 옵 니 다. 키 값 이 대상 에 대한 집합 을 옮 겨 다 니 며 모든 키 값 이 대상 에 게 가 져 옵 니 다. 키 값 에 따라 대상 에 게 키 와 값 을 찾 습 니 다.
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
public class TreeMapBL {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1,"one");
treeMap.put(2,"two");
treeMap.put(3,"three");
Set<Map.Entry<Integer, String>> entries = treeMap.entrySet();
for (Map.Entry<Integer, String> entry : entries) {
Integer key = entry.getKey();
String value = entry.getValue();
System.out.println(key+" "+value);
}
}
}
LinkedHashMap 의 특징
Map 인터페이스의 해시 표 와 링크 목록 이 실현 되 고 예측 가능 한 교체 순 서 를 가진다. 바 텀 데이터 구 조 는 링크 표 와 해시 표 이 고 요소 가 질서 가 있 으 며 유일 하 다. 요소 의 질서 성 은 링크 데이터 구조 에 의 해 보장 되 고 유일 성 은 해시 표 데이터 구조 에 의 해 보장 된다. Map 집합 데이터 구 조 는 키 와 만 관련 이 있다.
TreeMap 의 특징
『 8195 』 키 의 데이터 구 조 는 빨간색 과 검은색 나무 로 키 의 정렬 과 유일 성 을 확보 할 수 있 습 니 다. 정렬 은 자연 정렬 과 비교 기 정렬 로 나 뉘 는데 스 레 드 는 안전 하지 않 은 효율 이 비교적 높 습 니 다.
주의: TreeMap 키 는 null 사례 프레젠테이션 을 삽입 할 수 없습니다. 통계 문자열 에 있 는 모든 문자 가 나타 나 는 횟수 는 8195; 사고: 문자열 을 문자 배열 로 바 꾸 고 HashMap 에 순환 적 으로 저장 합 니 다. 하나의 요 소 를 저장 할 때마다 확인 하고 HashMap 이 없 으 면 1 로 설정 합 니 다. 있 으 면 이 요소 의 개수 에 1 을 추가 합 니 다.
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class NumSum {
public static void main(String[] args) {
String str = "dsd9d89sd8";
char[] chars = str.toCharArray();
HashMap<Object, Integer> ha = new HashMap<>();
for (int i = 0; i < chars.length; i++) {
if (!ha.containsKey(chars[i])) {
ha.put(chars[i], 1);
} else {
Integer integer = ha.get(chars[i]);
integer++;
ha.put(chars[i], integer);
}
}
Set<Map.Entry<Object, Integer>> entries = ha.entrySet();
for (Map.Entry<Object, Integer> entry : entries) {
Object key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+"-"+value);
}
}
}
집합 세트
사례: 끼 워 넣 은 집합 으로 아래 내용 을 출력 하고 조판 형식 이 같 아야 합 니 다.
jc 기초 반 장 삼 20 이 사 22 jy 취업 반 왕 오 21 조 육 23
1, HashMap 내장 HashMap, HashMap 의 모든 요 소 는 HashMap 값 입 니 다.
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class HashQT {
public static void main(String[] args) {
HashMap<String, Integer> jc = new HashMap<>();
jc.put(" ",20);
jc.put(" ",22);
HashMap<String, Integer> jy = new HashMap<>();
jy.put(" ",21);
jy.put(" ",23);
HashMap<String, HashMap> hashMap = new HashMap<>();
hashMap.put("jc ",jc);
hashMap.put("jy ",jy);
Set<Map.Entry<String, HashMap>> entries = hashMap.entrySet();
for (Map.Entry<String, HashMap> entry : entries) {
String key = entry.getKey();
System.out.println(key);
HashMap value = entry.getValue();
Set<Map.Entry<String,Integer>>entries1 = value.entrySet();
for (Map.Entry<String, Integer> entry1 : entries1) {
String key1 = entry1.getKey();
Integer value1 = entry1.getValue();
System.out.println("\t\t"+key1+" "+value1);
}
}
}
}
2, HashMap 내장 ArrayList HashMap 의 요 소 는 ArrayList 집합 입 니 다.
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class HashQT {
public static void main(String[] args) {
ArrayList<String> base = new ArrayList<>();
base.add(" 20");
base.add(" 22");
ArrayList<String> work = new ArrayList<>();
work.add(" 21");
work.add(" 23");
HashMap hashMap = new HashMap<String,ArrayList>();
hashMap.put("jc ",base);
hashMap.put("jy ",work);
Set<Map.Entry<String,ArrayList>>entries = hashMap.entrySet();
for (Map.Entry<String, ArrayList> entry : entries) {
String key = entry.getKey();
ArrayList value = entry.getValue();
System.out.println(key);
for (Object o : value) {
System.out.println(" "+o);
}
}
}
}
다른 끼 워 넣 을 수도 있 고 방식 이 모두 비슷 하 다
HashMap 과 Hashtable
HashMap: , . null null
Hashtable: , . null null
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WeakHashMap,IdentityHashMap,EnumMap다른 맵 구현 클래스와 달리 WeakHashMap 클래스의 키 대상은 간접적으로 약한 인용의 지시 대상으로 저장되며, 키가 정상적으로 사용되지 않을 때 자동으로 항목을 제거합니다.더 정확히 말하면, 주어진 키에 대한...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.