[자바] 배열, Array List 와 HashMap 의 비교

2947 단어
배열, Array List, HashMap 은 자바 프로젝트 개발 에 자주 사용 되 는 용기 입 니 다. 다음은 이 세 용 기 를 비교 해 보 겠 습 니 다.  ① 저장 가능 한 값 //배열 = > 기본 데이터 형식 이나 대상 을 저장 할 수 있 습 니 다.
int[] data = {1,2,3,4,5};
String[] name = {"Mike","Tom","Jessie"};

//Array List = > 대상 만 저장 가능
ArrayList nameList = new ArrayList();
nameList.add(new String("Ada"));

※ 하지만 아래 코드 컴 파 일 러 는 오류 가 발생 하지 않 습 니 다.
ArrayList numberList = new ArrayList();
numberList.add(100);  //              ,          Object  

//HashMap = > 쌍 으로 만 저장 가능 한 대상
HashMap capitalCityMap = new HashMap();
capitalCityMap.put("China","Beijing");

 
※ 하지만 아래 코드 컴 파 일 러 는 오류 가 발생 하지 않 습 니 다.
HashMap capitalCityMap2 = new HashMap();
capitalCityMap2.put(1,"Beijing"); //              ,          Object  

② 원소 개수//배열 을 어떻게 얻 나
int[] data = {1,2,3,4,5};
int size1 = data.length;  

//ArrayList
ArrayList nameList = new ArrayList();
nameList.add(new String("Ada"));
int size2 = nameList.size();

 
//HashMap
HashMap capitalCityMap = new HashMap();
capitalCityMap.put("China","Beijing");
int size3 = capitalCityMap.size();

③ 중복 값/배열 허용 여부
int[] data = {1,1,1,1,1};  //OK

 //ArrayList
ArrayList nameList = new ArrayList();
nameList.add(new String("Ada"));
nameList.add(new String("Ada")); //OK

//HashMap
HashMap capitalCityMap = new HashMap();
capitalCityMap.put("China","Beijing");
capitalCityMap.put("China","Shanghai");//OK,  "China"  Key   Value     ,
                                           //   "China"        "Beijing",  "Shanghai" 

④ 어떻게 옮 겨 다 니 는 지//배열
int[] data = {1,1,1,1,1};  //OK
for(int i=0;i

//ArrayList
ArrayList nameList = new ArrayList();
nameList.add(new String("Ada"));
Iterator iter = nameList.iterator();
while(iter.hasNext()){
    String name = (String)iter.next();
    System.out.println(name);//     Iterator    
}

혹은
for(int i=0;i

// HashMap
HashMap capitalCityMap = new HashMap();
capitalCityMap.put("China","Beijing");
Iterator iter2 = capitalCityMap.entrySet().iterator();
while(iter2.hasNext()){
    Map.Entry cityAndCountry = (Map.Entry)iter2.next();
    String country = (String)cityAndCountry.getKey();
    String city = (String)cityAndCountry.getValue();
    System.out.println(country + "'s capital city is " + city);//     Iterator    
}

좋은 웹페이지 즐겨찾기