Java 删除字符串中的下一行重复项
关注使用JAVA 我的txtfile(库-充当数据库)包含以下内容:Java 删除字符串中的下一行重复项,java,Java,关注使用JAVA 我的txtfile(库-充当数据库)包含以下内容: L7232-TRJCD5/ | FT1 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88 L7232-TRJCD5/ | FT2 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88 L7232-TRJCE5/ | FT2 | 4 | NS70 | QUAD | Fus
L7232-TRJCD5/ | FT1 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCD5/ | FT2 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCE5/ | FT2 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCEJ/ | FT1 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCEJ/ | QA | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCEJ/ | QA1 | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
L7232-TRJCEJ/ | QA | 4 | NS70 | QUAD | Fusion | 70C_VPLGA88
使用Burffeed阅读器和扫描仪功能后
线条是变量
下一步是使用下面的拆分
String[] Tokens = lines.split("\\\|");
System.out.println(Tokens[1]);
输出显示如下
FT1
FT2
FT2
FT1
QA
QA1
QA
我关心的是,因为输出的结构是nextline
iv'e被施压以移除重复项。
这意味着我不知道使用什么进行下一个步骤
接受建议和解决方案。只需使用一组字符串来存储代码。根据定义,集合不能有重复项,因此这应该可以解决您的特定问题
SortedSet<String> set = new TreeSet<>();
for (String line : lines) {
String[] tokens = line.split("\\|");
set.add(tokens[1]);
}
将输出的所有元素放入数组列表中,然后使用Set删除重复项:
List<String> arrayList = Arrays.asList(Tokens);
Set<String> set = new HashSet<String>(arrayList);
for(String str : set){
System.out.println(str);
}
List arrayList=Arrays.asList(令牌);
Set=新的HashSet(arrayList);
for(字符串str:set){
系统输出打印项次(str);
}
您的实际预期输出是什么?预期输出应删除重复项,且仅提供以下输出;FT1 FT2 QA QA1担心仍会获得相同的输出FT1 FT2 FT2 FT1 QA QA1 QAString[]标记=行。拆分(“\\\\”)//System.out.println(令牌[1]);List arrayList=new arrayList(Arrays.asList(令牌[1].split(“\n”));Set=新的HashSet(arrayList);对于(String str:set){System.out.println(str);}我得到的输出:FT1 FT2 FT2 FT1 QA1 QA1您可以将输出放入数组列表:arrayList.add(“FT1”);arrayList.add(“FT2”);arrayList.add(“FT2”);arrayList.add(“FT1”);arrayList.添加(“QA”);arrayList.add(“QA1”);arrayList.添加(“QA”)
然后将此数组列表传递到HashSet中。
List<String> arrayList = Arrays.asList(Tokens);
Set<String> set = new HashSet<String>(arrayList);
for(String str : set){
System.out.println(str);
}