我可以使用哪种断言方法检查数组中的元素是否唯一?

时间:2012-11-01 08:54:09

标签: junit

我有一个1000个元素的整数数组。我可以使用哪种断言方法来检查数组中的元素是否唯一?

2 个答案:

答案 0 :(得分:3)

 Set<?> mySet = Sets.newHashSet(myArray);
 Assert.assertEquals(mySet.size(), myArray.length);

我使用了Guava的Sets课作为一个学生,但你也可以添加每个元素

 Set<?> mySet = new HashSet<?>();
 mySet.addAll(Arrays.asList(myArray));

答案 1 :(得分:0)

正如我的评论中所提到的,使用整数集http://docs.oracle.com/javase/6/docs/api/java/util/Set.html会不会更有意义,而不是使用整数数组?那你知道价值总是独一无二的吗?

  

public interface Set extends Collection一个集合   不包含重复元素。更正式地说,集合不包含任何一对   元素e1和e2使得e1.equals(e2),并且至多为1   元件。正如其名称所暗示的那样,该界面对其进行建模   数学集抽象。