2015-02-07 4 views
0

으로 가게 이름에 multidimentional 배열을 작성할 수 있지만, 그 중 하나가 정말 날 유세하는 방법을 파악하는 데 도움이 필요. 이름 목록을 저장하는 다중 차원 배열을 작성해야합니다. 이름은 이미 단일 차원 배열에 있으며 알파벳 순서로 정렬되었습니다. multidimentioal 배열을 위해 나는 첫 번째 집합에서 A로 시작하는 모든 이름을 저장해야하며 두 번째에서는 B로 시작하는 모든 이름을 저장해야합니다. charabters의 ASCII 값을 사용하여 이름의 첫 번째 위치에있는 문자의 값에서 65를 빼고 배열 [i]에 대해 i와 동일한 값으로 설정하여 첫 번째 위치를 추적 할 수 있다는 것을 알고 있지만 그렇지 않습니다. 그 후에 이름을 저장하는 법을 정말로 알고 있습니다. 말할 것도없이, 나는 정말로 혼란스럽고 내가 필요한 것을 말하기조차 힘듭니다. 전혀 어떤 도움을 내가내가 현재 다른 componenets의 많은 프로젝트를 진행하고 편지

답변

0

내가 배열의 두 번째 차원으로 ArrayList을 사용 쓸 알고하지 말자 때문에 아직 코드를 작성하지 않은 감사합니다. 그렇게하면 임의의 수의 문자열을 임의로 추가 할 수 있습니다. 다음은 샘플이 몇 가지 아이디어

ArrayList<String>[] nameList = new ArrayList[25]; 
    for(int i =0; i < nameList.length; i++){ 
     nameList[i] = new ArrayList<String>(); 
    } 
    String[] names = {"Ali","Joe","Sue","Jane"}; 
    for(int i = 0; i < names.length;i++){ 
     int firstLetterCharacterCode = names[i].charAt(0) - 65; 
     nameList[firstLetterCharacterCode].add(names[i]); 
    } 

    for(int i =0; i < nameList.length;i++){ 
     for(String name : nameList[i]){ 
      System.out.println(name); 
     } 
    } 

굵은 당신의 느낌은 당신이 maps로 볼 수있는 경우

당신에게 제공하는 것입니다. 키의 문자를 사용할 수 있기 때문에 특정 이름 집합에 액세스하는 것이 더 우아 해집니다.

+0

도움을 주셔서 감사합니다. 실제로 비슷한 설정을 사용하여 다른 방법으로 알아낼 수있었습니다. 먼저 알파벳 순서로 모든 이름의 배열을 사용하여 첫 번째 인덱스 [i]를 설정 한 다음 두 번째 인덱스 [j]를 설정하기 위해 각 이름의 첫 번째 이니셜의 빈도를 저장하는 배열을 사용했습니다. – Meg

관련 문제