Java 中列表、集合和映射的区别
Java 中的列表界面是 Java 集合界面的子界面。它包含基于索引的插入、更新、删除和搜索元素的方法。它也可以有重复的元素。我们还可以将空元素存储在列表中。列表保留插入顺序,它允许位置访问和元素插入。它可以在 java.util 包中找到。让我们考虑一下 a 的一个例子,更好地理解如何使用 java 中的 a list 接口添加元素。
示例:
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to illustrate the
// addition of elements in a List
import java.util.*;
public class GFG {
public static void main(String args[])
{
// Creating a List
List<String> al = new ArrayList<>();
// Adding elements in the List
al.add("mango");
al.add("orange");
al.add("Grapes");
// Iterating the List
// element using for-each loop
for (String fruit : al)
System.out.println(fruit);
}
}
输出:
mango
orange
Grapes
集合遵循无序的方式,它在 java.util 包中找到,并在 java 中扩展了集合接口。集合中的重复项目将被忽略,并且不会在最终输出中打印。让我们考虑一个 a 更好理解的例子,在这里您将看到如何使用 java 中的 a set 接口来添加元素。让我们看看。
*示例:*
Java 语言(一种计算机语言,尤用于创建网站)
// A Java program to demonstrate a Set.
// Here, you will see how you can add
// Elements using Set.
import java.util.*;
public class SetExample {
public static void main(String[] args)
{
// Set demonstration using HashSet
Set<String> Set = new HashSet<String>();
// Adding Elements
Set.add("one");
Set.add("two");
Set.add("three");
Set.add("four");
Set.add("five");
// Set follows unordered way.
System.out.println(Set);
}
}
*输出:*
[four, one, two, three, five]
Java Map 界面 ,java.util.Map 表示一个键和值之间的映射。更具体地说,Java Map 可以存储成对的键和值。每个键都链接到一个特定的值。一旦存储在地图中,以后只需使用键就可以查找该值。让我们考虑一个 a 的例子,更好地理解如何使用 java 中的 Map 接口添加元素。让我们看看。
*示例:*
Java 语言(一种计算机语言,尤用于创建网站)
// A sample program to demonstrate Map.
// Here, you will see how you
// can add elements using Map
import java.util.*;
class MapExample {
public static void main(String args[])
{
// Creating object for Map.
Map<Integer, String> map
= new HashMap<Integer, String>();
// Adding Elements using Map.
map.put(100, "Amit");
map.put(101, "Vijay");
map.put(102, "Rahul");
// Elements can traverse in any order
for (Map.Entry m : map.entrySet()) {
System.out.println(m.getKey() + " "
+ m.getValue());
}
}
}
*输出:*
100 Amit
101 Vijay
102 Rahul
*列表、* 集合*和 Java 中地图*的区别
| [列表](https://www.geeksforgeeks.org/list-interface-java-examples/) | [设置](https://www.geeksforgeeks.org/set-in-java/) | [地图](https://www.geeksforgeeks.org/map-interface-java-examples/) | | --- | --- | --- | | 列表界面允许重复元素 | 集合不允许重复元素。 | 地图不允许重复元素 | | 列表保持插入顺序。 | Set 不维护任何插入顺序。 | 该映射也不维护任何插入顺序。 | | 我们可以添加任意数量的空值。 | 但是在集合中几乎只有一个空值。 | 映射最多允许一个空键和任意数量的空值。 | | 列表实现类有[数组列表](https://www.geeksforgeeks.org/arraylist-in-java/)、[链表](https://www.geeksforgeeks.org/linked-list-in-java/)。 | 设置实现类有 [HashSet](https://www.geeksforgeeks.org/hashset-in-java/) 、 [LinkedHashSet](https://www.geeksforgeeks.org/linkedhashset-in-java-with-examples/) 、 [TreeSet](https://www.geeksforgeeks.org/treeset-in-java-with-examples/) 。 | 地图实现类有 [HashMap](https://www.geeksforgeeks.org/java-util-hashmap-in-java/) 、 [HashTable](https://www.geeksforgeeks.org/hashtable-in-java/) 、 [TreeMap](https://www.geeksforgeeks.org/treemap-in-java/) 、 [ConcurrentHashMap](https://www.geeksforgeeks.org/concurrenthashmap-in-java/) 、 [LinkedHashMap](https://www.geeksforgeeks.org/linkedhashmap-class-java-examples/) 。 | | 该列表提供 get()方法来获取指定索引处的元素。 | Set 不提供 get 方法来获取指定索引处的元素 | 映射不提供 get 方法来获取指定索引处的元素 | | 如果您需要经常使用索引来访问元素,那么我们可以使用列表 | 如果你想创建一个独特元素的集合,那么我们可以使用 set | 如果您想以键/值对的形式存储数据,那么我们可以使用映射。 | | 使用列表过滤器遍历列表元素。 | 迭代器可以用来遍历集合元素 | 通过键集、值和入口集。 |版权属于:月萌API www.moonapi.com,转载请注明出处