.xml または .gxml で終わるファイル名の配列があります。各要素を別の配列に入れています。同じファイル名が 2 回追加されないようにする必要があります。
したがって、本当の問題は、同じ要素が配列に 2 回追加されないようにするにはどうすればよいかということです。
.xml または .gxml で終わるファイル名の配列があります。各要素を別の配列に入れています。同じファイル名が 2 回追加されないようにする必要があります。
したがって、本当の問題は、同じ要素が配列に 2 回追加されないようにするにはどうすればよいかということです。
処理のために配列の代わりに使用Set
して、2 回表示されないようにします
Set<String> fileNames = new HashSet<String>();
fileNames.add("1.txt");
fileNames.add("2.txt");
// not necessarily in that order with HashSet
System.out.println(fileNames); //[1.txt,2.txt]
fileNames.add("1.txt");// it will not add this one
System.out.println(fileNames); //[1.txt,2.txt]
アイテムを追加するたびに配列をループし、2 つを比較します。それらが同じ場合は、新しいものを追加しないでください。
for (int i = 0; i < array.length; i++)
if (object = array[i]) {
//DONT ADD THE OBJECT HERE
else {
//add the object
}
}
セットを使用するのが最良のオプションです。もう1つの方法は、ファイル名をキーとして、ファイルオブジェクトを値としてHashMapを使用することです。
HashMap<String,File> fileMap = new HashMap<String,File> ();
if (fileMap.get("fileName")==null)
fileMap.put("fileName",file)