创建一个唯一值的ArrayList
创建一个唯一值的ArrayList
我有一个从文件中提取的值的ArrayList(有很多行,这只是一个摘录):
其中每行的前两个值是包含数据的字符串,并存储在一个单独的元素中。
我想要做的是比较字符串数据元素,并删除,例如,第二个元素和该行中引用的所有元素。
目前,我使用了一个for循环,每13个元素比较一次字符串(只比较数据字符串)。
我的问题是:我能实现其他更好的解决方案吗?
这是我的代码:
import java.util.Scanner; import java.util.List; import java.util.ArrayList; import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class Main { public static void main(String[] args) throws Exception{ // 输入文件 Scanner s = new Scanner(new File("prova.txt")); // 将输入文件的每个元素保存在ArrayList中 ArrayListlist = new ArrayList (); while (s.hasNext()){ list.add(s.next()); } s.close(); // 用于保存修改后的值的ArrayList ArrayList ds = new ArrayList (); // int i; for(i=0; i<=list.size()-13; i=i+14){ // 组合前两个值以获取数据 String str = list.get(i)+" "+list.get(i+1); ds.add(str); // 将所有其他值添加到ds ArrayList中 int j; for(j=2; j<14; j++){ ds.add(list.get(i+j)); } // 比较数据值 int k; for(k=0; k<=ds.size()-12; k=k+13){ ds.get(k); // 第一个数据字符串元素 // 与其他字符串进行比较并删除 // TODO } } } }