나는 친구와 비디오 게임을하고있다. 다른 유형의 항목을 설명하기 위해 원래 Item 클래스를 확장하는 각 항목에 대한 클래스를 가졌습니다. 이 수업에는 많은 데이터가 없었기 때문에 대안 공간을 찾고 있었고 작업 공간이 너무 어수선하지 않았습니다. 나는 HashMaps에 대해 배우기 시작했고, 그들이 항목을 추가하는 멋진 방법이라고 생각했습니다. 또한 기본적으로 ArrayList로 만들 수있는 int를 사용하여 HashMap의 항목에 액세스하는 대신 String으로 액세스 할 수 있도록 설정할 수도 있습니다. 그래서이 기능을 추가하여 아이템 클래스에 익명의 아이템을 생성하기 시작했습니다.목록에서 항목에 액세스하고 복사하는 방법으로 HashMap을 사용하려면 어떻게해야합니까?
private static Item coal = new Item() {
weight = .2;
setImageID(0, 16);
}
그리고 이들을 HashMap에 추가하기 시작했습니다.
itemMap.put("Coal", coal);
이 몇 일 후, 나는이 목록의 각 유형의 하나 개의 항목 만 있다는 것을 깨닫고 우리가 이제까지 원본을 수정하지 않고 수정 될 수있는 해당 항목의 배수를하기를 원한다면, 우리 사본을 만들어야합니다. 나는 그것을하는 방법에 대한 연구를 시작했다. 복사 생성자를 사용할 수는 있지만 효율적으로 수행하려면 항목에 너무 많은 변수가 있습니다. 우리는 확실히 그것을 할 수 있었지만 간단한 해결책이 있는지 궁금해하고있었습니다. 우리는 모든 항목을 최종적으로 만들 수 있습니까? 나는이 분야의 프로그래밍에 완전히 익숙하지 않기 때문에 단지 뱉어 낼 뿐이었다. 이 모든 일을 잘못했을 수도 있습니다. 난 단지 HashMap을 사용하여 목록의 항목을 무기한으로 액세스하는 데 사용할 수있는 "항목 데이터베이스"를 만드는 방법이 필요합니다. 어떤 제안?