Set 集合以及Set集合的一些常用方法

来源:互联网 发布:美工全职 编辑:程序博客网 时间:2024/06/05 13:30

set 数组

1、set数组是一个不包含重复元素,无序的元素的集合。

2、set 数组的实现类是HashSetLinkedHashSetset接口继承于Collection接口,而Collection接口继承于Iterable接口;

public interface Set<E> extends Collection<E>{……}

3、set数组中不存在get()方法;

4、往set中添加元素使用的是add()方法,但是在set中没有add(index , element)方法。

  Set<String> mySet = new HashSet<>();(提醒,<>中不能赋值基本数据类型,一般放置的都是对象类型)

mySet.add("a");

mySet.add("b");

mySet.add("c");

5、内容添加过后,接下来就是要取出Set中的内容,用到forEach遍历输出Set中的元素;

for (String string : mySet) {

System.out.println(string);

6、上面提到用forEach遍历数组Set,那下面我就用迭代器来遍历Set数组;

(迭代器是Java提供给我们的一个接口,在此我们不去考虑他的底层结构)

Iterator<String> iterator = mySet.iterator();

(这里Iterator接口会给我们许多种方法,这里我们只用到next()hasNext()方法)

        (next()方法:输出Set数组元素,当下一个位置无元素是,使用next()方法就会抛出异常(NoSuchElementException)。

hasNext()方法,判断下一个位置是否有元素,返回值类型是boolean类型)

while(iterator.hasNext()){

System.out.println(iterator.next());

}

7、在这里多加一点,就是使用迭代器遍历List数组

List<String> list = new ArrayList<>();

list.add("shui");

list.add("ping");

list.add("zuo");

Iterator<String> iterator = list.iterator();

while(iterator.hasNext()){

System.out.println(iterator.next());

}

8、删除数组中的某个元素,只有一个remove()方法,此方法没有方法重载,意味着大家不能通过数组元素的下标来删除数组中的某个内容。

mySet.remove("a"); //删除数组中的"a"元素

mySet.isEmpty();   //判断数组是否为空

mySet.clear();    //清除数组中的所有内容