【发布时间】:2019-12-02 02:01:59
【问题描述】:
我想分别打印重复值和非重复值。
String[] values= { "Java","C", "JavaScript", "JavaScript", "Java" ,"Java", "Java" , "JavaScript", "Java", "Ruby"};
我的输出应该在下面。
String[] duplicate = {"Java", "Java", "Java", "Java", "Java", "JavaScript", "JavaScript", "Java"}
String[] unique = {"C", "Ruby"}
我尝试了几种方法,但我无法做到。
public static void main(String[] args) {
String[] a = { "Java","C", "JavaScript", "JavaScript", "Java" ,"Java", "Java" , "JavaScript", "Java", "Ruby"};
List<String> uniq = new ArrayList<String>();
List<String> dupe = new ArrayList<String>();
int count = 0;
for (int j = 0; j < a.length; j++) {
for (int k = j + 1; k < a.length; k++) {
if (a[j] == a[k]) {
count++;
}
}
if (count == 1){
System.out.println("Dupe: "+a[j]);
dupe.add(a[j]);
}
count = 0;
}
}
输出
String[] Duplicate = {"Java", "Java", "Java", "Java", "Java", "JavaScript", "JavaScript"}
String[] Unique = {"C", "Ruby"}
【问题讨论】:
-
你知道集合是如何工作的吗?我建议看看他们
-
是的。但它会为所有值创建唯一列表。但我需要单独的列表。
-
是的,看看套装
-
@User 输出的顺序重要吗?
标签: java printing java-8 duplicates printf