Java中的大多数集合(列表,设置,地图,尾巴)
#java #list #map #set

Java Collections框架(JCF​​)是一组Java类和接口,可让您存储,操纵和组织对象组。它是Java中最受欢迎的框架之一,用于许多应用程序和库中。 JCF提供了收集的联合接口,该接口允许检测器与不同类型的均匀手柄收集一起工作。

集合接口

收集接口最终会涉及所有收集器类都必须涉及的MES。 JCF中有几个收集器界面,每个界面都有其自身和特征。

最常用的收集接口是:

  • 列表:重复Donné订购的收集。这些元素可以重复,并以插入顺序存储。

  • set :再现了收集未订购的无法重复

  • 地图:表示封闭对/值的集合。 封闭 unique 可以是depliqué

  • 尾巴:表示队列这些元素是在文件的末尾添加的

列表类型集合:列表

列表是订购的收集,其中可能包含double -in -in -law。元素以插入顺序存储。列表由 arraylist类实现 linkedlist vector

列表中常用的配偶是:

  • add(element):添加
  • 删除(元素):删除列表的第一次出现。
  • 获取(索引):将老人返回列表中的特定索引。

使用ArrayList类的示例:

import java.util.ArrayList;
import java.util.List;

public class ArrayListExample {
   public static void main(String[] args) {
      List<String> fruits = new ArrayList<>();
      fruits.add("Pomme");
      fruits.add("Banane");
      fruits.add("Orange");

      // Affiche: [Pomme, Banane, Orange]
      System.out.println(fruits); 

      fruits.remove("Banane");

      System.out.println(fruits); // Affiche: [Pomme, Orange]

      String fruit = fruits.get(1);

      // Affiche: Orange
      System.out.println(fruit); 
   }
}

设置类型集合:集合

合奏是非命令的集合,不能包含双打的老年人。这些集由 hashset类实现 treetet

与集合一起使用的MES是:

  • add(element):添加
  • 删除(元素):删除一个合奏。
  • 包含(元素):指整体包含间隔

类的示例 hashset

import java.util.HashSet;
import java.util.Set;

public class HashSetExample {
   public static void main(String[] args) {
      Set<String> fruits = new HashSet<>();
      fruits.add("Pomme");
      fruits.add("Banane");
      fruits.add("Orange");
      // L'élément en double est ignoré
      fruits.add("Pomme"); 

      // Affiche: [Banane, Orange, Pomme]
      System.out.println(fruits);

      fruits.remove("Banane");

      // Affiche: [Orange, Pomme]
      System.out.println(fruits); 

      boolean containsApple = fruits.contains("Pomme");
      // Affiche: true
      System.out.println(containsApple);
   }
}

地图类型集合:封闭/价值关联

映射是关闭/价值对集合。 封闭唯一可以是depliqué Hashmap类 treemap 暗示地图。

通常与地图一起使用的MES是:

  • put(键,值):添加封闭的一对/值。
  • 删除(键):用攀爬删除这对。
  • 获取(键):返回其末尾的关联值。

使用hashmap类的示例:

import java.util.HashMap;
import java.util.Map;

public class HashMapExample {
   public static void main(String[] args) {
      Map<String, Integer> fruits = new HashMap<>();
      fruits.put("Pomme", 1);
      fruits.put("Banane", 2);
      fruits.put("Orange", 3);

      // Affiche: {Pomme=1, Banane=2, Orange=3}
      System.out.println(fruits); 

      fruits.remove("Banane");

      // Affiche: {Pomme=1, Orange=3}
      System.out.println(fruits); 

      int numberOfApples = fruits.get("Pomme");

      // Affiche: 1
      System.out.println(numberOfApples); 
   }
}

尾部类型集合:文件

文件是将选举添加到最后并从检测中撤回的集合。队列由 LinkedList类 PriortityQueue 实现。

通常与队列一起使用的MES是:

  • 提供(元素):添加
  • poll():引用并删除队列队列的事实。
  • peek():指无需删除队列的定义。

使用类的示例 linkedlist

import java.util.LinkedList;
import java.util.Queue;

public class LinkedListExample {
   public static void main(String[] args) {
      Queue<String> names = new LinkedList<>();
      names.offer("Alice");
      names.offer("Bob");
      names.offer("Charlie");

      // Affiche: [Alice, Bob, Charlie]
      System.out.println(names); 

      String firstName = names.poll();

      // Affiche: Alice
      System.out.println(firstName);

      // Affiche: [Bob, Charlie]
      System.out.println(names); 

      String nextName = names.peek();

      // Affiche: Bob
      System.out.println(nextName); 
   }
}

收集比较

捐赠结构 描述 重复的对象管理 ordre 存储八个null 的可能性 帐户 使用示例
地图 一个对集合值(每个线索都是唯一的) 唯一的客户端,但是重复的值 non sp 丁香和值可以为null claâ©,IT©Readur 用户捐赠存储,单词翻译
set 独特的集合,没有特殊顺序 元素唯一 non sp 元素可以为null ell©©©rapur 订阅管理,独特的过滤
列表 elé©ments副本 订购为加法的函数 元素可以为null 索引,it Rateur 历史存储,tôs
队列 有序的收集:员工访问是为了添加的情况 elé©ments副本 订购为加法的函数 元素可以为null 调查和脱口机操作,项目 文件管理,订单控制

结论

Java收集是JCF的重要组成部分。这些集合提供了一种灵活而有效的处理来存储和操纵数据。使用集合界面和适当的收集含义,库赛车可以更强大,更灵活。这些集合还用于依赖许多当前的编程问题,对于Java中东方程序的完整性至关重要。

走得更远:https://www.jmdoudoux.fr/java/dej/chap-collections.htm#collections-7