editplus を使用して Java ファイルを作成したときに問題が発生しました。
次のようにコードをコピーします。
java.util.* をインポートします。
クラスコレクション{
public static void main(String[] args) {
コレクション c1=新しい ArrayList(25);
c1.add(new String("one"));
c1.add(new String("two"));
文字列 s="3";
c1.add(s);
for (イテレータ i=c1.iterator();i.hasNext();)
{
System.out.println(i.next());
}
}
}
すると、他人から譲り受けた次のような理由が見つかりました。
Java ソース ファイルをコンパイルするときに、jdk1.5 以降を使用している場合にこの問題が発生することがあります。 (チェックされていない、または安全でない操作が使用されています。-Xlint:unchecked を指定して再コンパイルしてください。)
その理由は、jdk1.5 でのコレクション クラスの作成が jdk1.4 のそれとは若干異なるためです。主な理由は、jdk1.5 ではジェネリックが追加されており、コレクション内のデータを確認できることです。 jdk1.5 より前では、パラメータの型が指定されていない場合、JDK 1.5 コンパイラは、指定されたパラメータが要件を満たしているかどうかをチェックできないため、未チェックの警告を報告しますが、これは動作には影響しません。プロンプトに従い、このような警告をキャンセルするパラメーターを指定してコンパイルします。または、型パラメータを指定します。
次のようにコードをコピーします。
リスト一時 = 新しい ArrayList ();
temp.add("1");
temp.add("2");
に変更します
次のようにコードをコピーします。
リスト <String> temp = new ArrayList <String> ();
temp.add("1");
temp.add("2");
次に、コードを次のように変更します
次のようにコードをコピーします。
java.util.* をインポートします。
クラスコレクション{
public static void main(String[] args) {
Collection<String> c1=new ArrayList<String>(25);
c1.add(new String("one"));
c1.add(new String("two"));
文字列 s="3";
c1.add(s);
for (イテレータ i=c1.iterator();i.hasNext();)
{
System.out.println(i.next());
}
}
}