0

Javaで使用しようとしListましたが、「シンボルが見つかりません」と表示されます。

次のコードを試しました:

List<int> myList=new List<int>();
myList=new JList<int>();

これはまったく機能していません。

4

3 に答える 3

6

ここで差し迫った問題が 3 つあります。

  1. 型パラメーターをプリミティブにすることはできません。適切なラッパー クラスを使用する必要があります。あなたの場合、それはList<Integer>.

  2. Listはインターフェースです。インスタンス化することはできません。それを実装するクラスをインスタンス化する必要があります。一般的なオプションはArrayList次のとおりです。

    List<Integer> myList = new ArrayList<Integer>();
    

    Java 7 以降では、代入の右側にある型パラメーターを実際に書き直す必要はありません。

    List<Integer> myList = new ArrayList<>();
    
  3. List/ArrayListはパッケージに含まれていないため、ファイルの先頭 (ある場合はパッケージ宣言の下) にjava.lang適切なステートメントを含めてインポートする必要があります。import

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

    そのため、「シンボルが見つからない」と不平を言っています。

于 2013-09-12T00:54:05.910 に答える
0

次の List 宣言に関する 2 つの問題

List<int> myList=new List<int>();

それは:

  1. List はオブジェクトに対して機能するため、プリミティブ int の代わりに Integer を使用する必要があります
  2. List はインターフェイスなのでインスタンス化できません。List インターフェイスの実装クラスである ArrayList を使用してインスタンスを作成します。

リストを次のように定義する必要があります。

    List<Integer> myList=new ArrayList<Integer>();

また、コードに次のクラスを必ずインポートしてください。

import java.util.ArrayList;
import java.util.List;
于 2013-09-12T00:54:34.113 に答える
0

まずint、パラメータ化されたタイプでは使用できません。代わりに使用できますInteger

次に、Listはインターフェイスです。インスタンス化することはできませんListArrayList以下を実装するクラスを使用できますList

ArrayList<Integer> list = new ArrayList<Integer>();

または:

List<Integer> list = new ArrayList<Integer>(); 
于 2013-09-12T00:54:48.460 に答える