홈>
TreeMap을 생성하고>모든 키에 대해 arraylist 값 (0,0)을 설정 한 다음 단일 키 값만 업데이트했습니다. 그러나 모든 키 값을 업데이트합니다. 다음은 간단한 코드입니다.
import java.util.*;
public class Test {
public static void main(String[] args) {
TreeMap<String, ArrayList<Integer>> treeMap = new TreeMap<>();
String[] moduleList = {"apple", "orange", "grape"};
ArrayList<Integer> emptyInitialArrayList = new ArrayList<>(Arrays.asList(0, 0));
for (String tempModule : moduleList) {
treeMap.put(tempModule, emptyInitialArrayList);
}
ArrayList<Integer> tempModuleMap = treeMap.get("apple");
tempModuleMap.set(0, tempModuleMap.get(0) + 1);
for (Map.Entry<String, ArrayList<Integer>> test : treeMap.entrySet()) {
System.out.println(test.getKey());
System.out.println(test.getValue().get(0));
System.out.println(test.getValue().get(1));
}
}
}
이 코드의 출력 :
apple
1
0
grape
1
0
orange
1
0
뭔가가 없습니다. 내가 실수 한 곳을 찾을 수 없습니다.
- 답변 # 1
- 답변 # 2
고치려면 새 ArrayList 호출을 루프에 넣으십시오. 그렇지 않으면 모든 키에서 동일한 값의 객체를 공유하고 있습니다
String[] moduleList = {"apple", "orange", "grape"}; for (String tempModule : moduleList) { ArrayList<Integer> emptyInitialArrayList = new ArrayList<>(Arrays.asList(0, 0)); treeMap.put(tempModule, emptyInitialArrayList); }
관련 자료
- C # Concurrent Dictionary가 Azure Function에서 값을 추가하거나 업데이트하지 않습니다
- python - 단일 열에 여러 열 값 결합
- postgresql - 단일 Postgres 데이터베이스 테이블 열의 여러 값
- sql - 모든 사용자에 대해 해당 값이있는 경우 단일 값으로 열의 모든 값을 업데이트합니다
- python - 함수 반환 값을 한 줄에 단일 값과 튜플로 압축 해제
- mysql - SQL의 단일 셀에서 여러 값을 쿼리하는 방법
- text processing - 한 번의 패스로 파일에서 여러 값을 추출하는 방법은 무엇입니까?
- database - elasticsearch는 단일 필드에서 일부 값을 집계합니다
- android - 인 텐트 문제 및 Firebase가 값을 업데이트하지 않음
- c# - 단일 값으로 복합 값 사전에서 키를 검색하는 방법
- Firebase 실시간 데이터베이스에서 값을 변경할 때 Flutter 앱의 변경 사항을 확인하는 방법
- spring boot - 단일 쿼리에서 하위 변경 사항이있는 상위 변경 사항 가져 오기
- python - 다른 DataFrame의 단일 값으로 Pandas DataFrame을 만드는 방법은 무엇입니까?
- sql server - SQL에서 조건에서 단일 열의 다른 값을 갖는 방법은 무엇입니까?
- java - 여러 열이있는 단일 행으로 Excel에서 값 읽기
- python - 다른 정수 값에 대해 작동하도록 목록 값을 변경하는이 함수를 어떻게 얻을 수 있습니까?
- distributed system - 단일 실행에서 여러 값을 허용 할 수 있습니까?
- python - 단일 8 비트 값 (0-255)을 3, 8 비트 값으로 변환
- node.js - 단일 쿠키 키에 여러 값을 저장하는 방법
- python - 단일 키의 값 내에서 apply 및 int를 올바르게 사용하는 방법
관련 질문
- .size()에 대한 Java의 HashMap
- java : List
>를 기본 및 보조 방식으로 정렬하시겠습니까? - 람다 식에 매개변수 전달 -Java
- Java에서 jframe 구성 요소 간에 변수와 목록을 전달하는 방법
- java : 메인 클래스에서 updateEmployee 함수를 어떻게 호출합니까?
- java : 변경할 수 없는 목록을 변경 가능한 목록으로 변환하는 방법이 있습니까?
- java : ArrayList에 대한 스캐너 검색으로 내용을 인쇄하고 라인을 인쇄하십시오.
- java : for each 루프를 사용하여 2차원 배열 목록 내부를 탐색하는 방법
- java : 'LinkedHashMap.get'에 대한 의심스러운 호출
- java : ArrayList에서 두 번 나타나는 숫자 제거
각 임시 모듈마다 새로운 빈 초기 배열 목록을 추가해야합니다.
코드는 현재 맵의 각 키에 대해 동일한 배열 목록 인스턴스를 넣습니다. 따라서 나중에 애플 키를 업데이트 할 때 다른 키에도 변경 사항이 적용됩니다.