首页 > 编程语言 >无涯教程-Java9 - Collection工厂方法

无涯教程-Java9 - Collection工厂方法

时间:2023-12-26 18:31:44浏览次数:44  
标签:Map set java list 无涯 Collection util import Java9

使用Java 9,新的工厂方法被添加到List,Set和Map接口以创建不可变的实例。用于以较少的冗长和简洁的方式创建集合。

Collections旧方法

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class Tester {
   public static void main(String []args) {
      Set<String> set=new HashSet<>();
      set.add("A");
      set.add("B");
      set.add("C");
      set=Collections.unmodifiableSet(set);
      System.out.println(set);
      List<String> list=new ArrayList<>();

      list.add("A");
      list.add("B");
      list.add("C");
      list=Collections.unmodifiableList(list);
      System.out.println(list);
      Map<String, String> map=new HashMap<>();

      map.put("A","Apple");
      map.put("B","Boy");
      map.put("C","Cat");
      map=Collections.unmodifiableMap(map);
      System.out.println(map);
   }
}

它将打印以下输出。

[A, B, C]
[A, B, C]
{A=Apple, B=Boy, C=Cat}

Collections新方法

使用Java 9,会将以下方法及其重载的对应方法添加到List,Set和Map接口。

static <E> List<E> of(E e1, E e2, E e3);
static <E> Set<E>  of(E e1, E e2, E e3);
static <K,V> Map<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3);
static <K,V> Map<K,V> ofEntries(Map.Entry<? extends K,? extends V>... entries)

注意事项

  • 对于List和Set接口,of(...)方法重载了0到10个参数,其中一个带有var args参数。

  • 对于Map接口,of(...)方法重载了0到10个参数。

  • 如果Map接口的参数超过10个,则可以使用ofEntries(...)方法接受var args参数。

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.AbstractMap;
import java.util.Map;
import java.util.Set;

public class Tester {

   public static void main(String []args) {
      Set<String> set=Set.of("A", "B", "C");      
      System.out.println(set);
      List<String> list=List.of("A", "B", "C");
      System.out.println(list);
      Map<String, String> map=Map.of("A","Apple","B","Boy","C","Cat");
      System.out.println(map);
  
      Map<String, String> map1=Map.ofEntries (
         new AbstractMap.SimpleEntry<>("A","Apple"),
         new AbstractMap.SimpleEntry<>("B","Boy"),
         new AbstractMap.SimpleEntry<>("C","Cat"));
      System.out.println(map1);
   }
}

它将打印以下输出。

[A, B, C]
[A, B, C]
{A=Apple, B=Boy, C=Cat}
{A=Apple, B=Boy, C=Cat}

参考链接

https://www.learnfk.com/java/java9-collection-factory-methods.html

标签:Map,set,java,list,无涯,Collection,util,import,Java9
From: https://blog.51cto.com/u_14033984/8986430

相关文章

  • 无涯教程-Java9 - JavaDocs增强
    可以使用javadoc工具生成Java文档。当前,它以html4.0格式生成文档。在Java9中,无涯教程可以通过在命令行参数中使用-html5选项来生成html5格式的文档。旧样式Java文档考虑以下C:/JAVA文件夹中的代码。/***@authorMahKumar*@version0.1*/publicclassTester{......
  • 无涯教程-Java9 - JShell(REPL)
    REPL代表"Read-Eval-PrintLoop"。使用JShell,java具有REPL函数。使用REPL,无涯教程可以对基于Java的逻辑进行编码和测试,而无需使用javac进行编译,并且可以直接查看计算输出。运行JShell打开命令提示符,然后键入jshell。$jshell|WelcometoJShell--Version9-ea|Forani......
  • 无涯教程-PostgreSQL - String函数
    PostgreSQL字符串函数主要用于字符串操作。下表详细介绍了重要的字符串函数-S.No.Name&描述1ASCII()返回最左边字符的数值2BIT_LENGTH()返回参数的长度(以位为单位)3CHAR_LENGTH()返回参数中的字符数4CHARACTER_LENGTH()CHAR_LENGTH()的同义词5CONCAT_WS......
  • 无涯教程-PostgreSQL - Numeric函数
    PostgreSQL数值函数主要用于数值运算和/或数学计算。下表详细介绍了数字函数-S.No.Name&描述1ABS()返回数值表达式的绝对值。2ACOS()返回数值表达式的反余弦值,如果该值不在-1到1之间,则返回NULL。3ASIN()返回数字表达式的反正弦值,如果值不在-1到1的范围内,则返回NU......
  • 无涯教程-PostgreSQL - ARRAY函数
    PostgreSQLARRAY_AGG函数用于将包含null的输入值连接到数组中。要了解ARRAY_AGG函数,请考虑将 COMPANY 记录为跟随-testdb#select*fromCOMPANY;id|name|age|address|salary----+-------+-----+-----------+--------1|Paul|32|California|......
  • 无涯教程-PostgreSQL - MIN函数
    PostgreSQLMIN函数用于在记录集中找出最小值的记录。要了解MIN函数,请考虑将表 COMPANY 记录为跟随-testdb#select*fromCOMPANY;id|name|age|address|salary----+-------+-----+-----------+--------1|Paul|32|California|200002|L......
  • 无涯教程-PostgreSQL - MAX函数
    PostgreSQLMAX函数用于在记录集中找出最大值的记录。要了解MAX函数,请将表 COMPANY 记录为跟随-testdb#select*fromCOMPANY;id|name|age|address|salary----+-------+-----+-----------+--------1|Paul|32|California|200002|Learn......
  • 无涯教程-PostgreSQL - COUNT函数
    PostgreSQLCOUNT函数是最简单的函数,在计算预计由SELECT语句返回的记录数时非常有用。要了解COUNT函数,请考虑将表 COMPANY 记录为跟随-testdb#select*fromCOMPANY;id|name|age|address|salary----+-------+-----+-----------+--------1|Paul|......
  • 无涯教程-PostgreSQL - 连接Perl
    安装模块可以使用PerlDBI模块将PostgreSQL与Perl集成,PerlDBI模块是Perl编程语言的数据库访问模块。它定义了一组提供标准数据库接口的方法,变量和约定。这是在Linux/Unix机器上安装DBI模块的简单步骤-$wgethttp://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-1.625.tar.......
  • 无涯教程-PostgreSQL - 连接C/C++
    本教程将使用libpqxx库,该库是PostgreSQL的官方C++客户端API。libpqxx的源代码在BSD许可下可用,因此您可以免费下载,将其传递给他人,进行更改,出售,将其包含在自己的代码中,并与选择的任何人共享您的更改。安装Libpqxx可以从以下链接下载最新版本的libpqxx:下载Libpqxx。因此,下载......