编辑
这里有两个版本。一次使用ArrayList和其他用途HashSet
比较它们并创建自己从这个版本,直到你得到你所需要的。
这应足以涵盖:这不是学校的作业:)所以,如果你能指导我,那就足够了
你问题的一部分。
继续原来的答复:
您可以使用java.util.Collection和/或java.util.ArrayList为了这个。
这个固位方法执行以下操作:仅保留此集合中包含在指定集合中的元素。
见此示例:import java.util.Collection;import java.util.ArrayList;import java.util.Arrays;public class Repeated {
public static void main( String [] args ) {
Collection listOne = new ArrayList(Arrays.asList("milan","dingo", "elpha", "hafil", "meat", "iga", "neeta.peeta"));
Collection listTwo = new ArrayList(Arrays.asList("hafil", "iga", "binga", "mike", "dingo"));
listOne.retainAll( listTwo );
System.out.println( listOne );
}}
编辑
对于第二部分(类似的值),可以使用移除方法:移除此集合的所有元素,这些元素也包含在指定的集合中。
第二个版本还提供类似的值和重复处理(通过丢弃它们)。
这一次Collection可能是Set而不是List(区别在于,集合不允许重复值)import java.util.Collection;import java.util.HashSet;import java.util.Arrays;class Repeated {
public static void main( String [] args ) {
Collection listOne = Arrays.asList("milan","iga",
"dingo","iga",
"elpha","iga",
"hafil","iga",
"meat","iga",
"neeta.peeta","iga");
Collection listTwo = Arrays.asList("hafil",
"iga",
"binga",
"mike",
"dingo","dingo","dingo");
Collection similar = new HashSet( listOne );
Collection different = new HashSet();
different.addAll( listOne );
different.addAll( listTwo );
similar.retainAll( listTwo );
different.removeAll( similar );
System.out.printf("One:%s%nTwo:%s%nSimilar:%s%nDifferent:%s%n", listOne, listTwo, similar, different);
}}
产出:$ java RepeatedOne:[milan, iga, dingo, iga, elpha, iga, hafil, iga, meat, iga, neeta.peeta, iga]Two:[hafil, iga, binga, mike, dingo, dingo,
dingo]Similar:[dingo, iga, hafil]Different:[mike, binga, milan, meat, elpha, neeta.peeta]
如果它不能完全满足你的需要,它给你一个好的开始,这样你就可以在这里处理。
读者的问题:你将如何包括所有重复的价值观?