ArrayList (上記のコードのファイル) に問題があります。この arraylist は、sd にあるファイルで構成されています。問題は、重複する可能性があり (同じイメージですが、sd へのパスが異なるため、ファイル名は同じですがパスが異なる)、それらを削除したいことです。だから私はこのコードを使用します:
ArrayList<File> removedDuplicates = new ArrayList<File>();
for (int i = 0; i < File.size(); i++) {
if (!removedDuplicates.contains(File.get(i))) {
removedDuplicates.add(File.get(i));
}
}
しかし、ファイルのリストの contains() がファイル名ではなくファイルパスを参照するため、機能しません。本当ですか?どうすれば問題を解決できますか? 私も試しました:
ArrayList<File> removedDuplicates = new ArrayList<File>();
for (int i = 0; i < File.size(); i++) {
if (!removedDuplicates.contains(File.get(i).getName())) {
removedDuplicates.add(File.get(i));
}
}
それでもうまくいきません。ありがとう