当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java List和Set的区别用法及代码示例


List interface 允许存储有序集合。它是Collection的子接口。它是一个有序的对象集合,其中允许存储重复值。列表保留插入顺序,它允许位置访问和插入元素。

声明:

public abstract interface List extends Collection

java.util 包中的 set interface 和扩展 Collection interface 是一个无序对象集合,其中不能存储重复值。它是一个实现数学集的接口。该接口包含继承自Collection接口的方法,并添加了限制插入重复元素的函数。

声明:Set 接口声明为:

public interface Set extends Collection

例子:

Input :  Add Elements = [1, 2, 3, 1]
Output:  Set = [1, 2, 3]
     List = [1, 2, 3, 1]

Input :  Add Elements = [a, b, d, b]
Output:  Set = [a, b, d]
     List = [a, b, d, b]

下面是Set和List的示意图:

Java


// Implementation of List and Set in Java
import java.io.*;
import java.util.*;
class GFG {
    public static void main(String[] args)
    {
        // List declaration
        List<Integer> l = new ArrayList<>();
        l.add(5);
        l.add(6);
        l.add(3);
        l.add(5);
        l.add(4);
        // Set declaration
        Set<Integer> s = new HashSet<>();
        s.add(5);
        s.add(6);
        s.add(3);
        s.add(5);
        s.add(4);
        // printing list
        System.out.println("List = " + l);
        // printing Set
        System.out.println("Set = " + s);
    }
}
输出
List = [5, 6, 3, 5, 4]
Set = [3, 4, 5, 6]

列表和集合的区别:

List
1. List 是一个索引序列。 1. Set是一个无索引的序列。
2.List允许重复元素 2. Set不允许有重复的元素。
3. 可以按位置访问元素。 3. 不允许对元素进行位置访问。
4. 可以存储多个null元素。 4. 空元素只能存储一次。
5.列表的实现有ArrayList、LinkedList、Vector、Stack 5. Set的实现有HashSet、LinkedHashSet。


相关用法


注:本文由纯净天空筛选整理自tejswini2000k大神的英文原创作品 Difference Between List and Set in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。