2012-09-05 6 views
1

배열 목록을 Java로 작성하는 방법을 이해하려고합니다. 몇 가지 이유로 인해 스택에있는 다른 게시물에서이 예제를 보았지만 ArrayList에 myList 유형을 변경하라는 오류가 나타납니다. 넘쳐서 작동하는 것처럼 보였다.문자열 목록을 만들 수 없습니다

내가하려는 것은 단순히 목록을 만들고 세 개의 문자열을 추가 한 다음 반복하여 인쇄합니다.

참고로 정수, 문자열 및 개체를 모두 같은 목록에 추가 할 수 있습니까?

이 점에 대해 도움이 될만한 정보가 있으면 알려 주시면 감사하겠습니다.

보조 노트에
List myList = new ArrayList(); 


      myList.add("hello"); 
      myList.add("World"); 
      myList.add("!"); 

//print contents 
System.out.println(myList); 
+1

정확한 오류 란 무엇인가요? – Vikdor

+0

타입 불일치 : ArrayList에서 List로 변환 할 수 없다. 그러나 위의 코드가 어떤 사람들에게는 효과가 있지만 나에게는 적합하지 않은 이유가 궁금했다. – AnchovyLegend

+0

올바른 목록을 가져 오는 것에 대한 아래 내 의견을 참조하십시오. – Vikdor

답변

9

내 생각 엔 당신이 java.util.ArrayList 수입 있지만 java.util.List 한 것입니다.

import java.util.ArrayList; 
import java.util.List; 

class Test 
{ 
    public static void main(String args[]) 
    { 
        List myList = new ArrayList();  

        myList.add("hello"); 
        myList.add("World"); 
        myList.add("!"); 

        //print contents 
        System.out.println(myList); 
    } 
} 

내가 제네릭 사용하도록 촉구 강하게 거라고했다 가졌 : : 당신이 모두 가져 오는 경우 코드는이 작품을 게시 한

List<String> myList = new ArrayList<String>(); 
+0

고맙습니다. 정확히 내가 필요한 것 :) – AnchovyLegend

1

, 그것은 정수, 문자열을 추가 할 수 있으며, 동일한 목록에있는 모든 개체를?

Object 유형을 List에 추가 할 수는 있지만 권장하지 않습니다. JDK 1.5 이상을 사용하는 경우 안전하지 않은 모음을 만들지 말고 Generics을 사용해야합니다.

List myList = new ArrayList();

관련하여 올바른 목록이 있는지 확인하십시오. 그것은 java.util.List해야하지 java.awt.List (자주 이클립스에서 위까지 오는 나를 위해 기능을 자동 제안!)

+0

제네릭에 대해서는 묻지 않았습니다. 또한 올바른 목록을 사용하고 있습니다. – AnchovyLegend

+0

그런 다음 올바른 ArrayList (즉, java.util.ArrayList)를 사용하고 있는지 확인하십시오. – Vikdor

1
당신은 당신의 목록에있는 문자열 형식을 사용한다

을 (목록)보다는 제네릭 (목록).

 List<String> myList = new ArrayList<String>(); 
     myList.add("hello"); 
     myList.add("World"); 
     myList.add("!"); 
     for(String str : myList){ 
      System.out.println(str); 
     } 
관련 문제