在Java中,有多种方式来快速初始化各种常用对象,如字符串数组(String[]
),集合列表(List
),映射表(Map
),以及集合(Set
)。不同的数据结构和版本的Java可能提供不同的初始化方法。以下是一些基本示例说明如何在Java中进行快速初始化。
1. 字符串数组(String[]
)
String[] strings = {"Apple", "Banana", "Cherry"};
2. 列表(List
)
在Java 8及之前的版本中,可以使用Arrays.asList
:
import java.util.List;
import java.util.Arrays;List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
从Java 9开始,可以使用List.of
:
import java.util.List;List<String> list = List.of("Apple", "Banana", "Cherry");
3. 映射表(Map
)
在Java 8中初始化Map通常需要借助额外的工具类或在初始化时手动添加条目。在Java 9以上可以使用Map.of
方法,这更简捷和直观:
import java.util.Map;Map<String, Integer> map = Map.of("Apple", 1, "Banana", 2, "Cherry", 3);
4. 集合(Set
)
同样地,从Java 9开始,Set
也可以通过Set.of
来快速初始化:
import java.util.Set;Set<String> set = Set.of("Apple", "Banana", "Cherry");
完整示例代码
以下是一个完整的测试示例,展示了如何在一个Java程序中使用上述初始化方法:
/**
* @Title: ObjectInitialTests.java
* @Package com.osxm.je.chp07
* @Description: TODO
* @author XM
* @date 2024年6月28日 下午10:42:06
* @Copyright: 2024
* @version V1.0
*/
package com.osxm.je.chp07;import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Set;import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;public class ObjectInitialTests {@Testpublic void initStringArray() {String[] strings = {"Apple", "Banana", "Cherry"};Assertions.assertEquals(3, strings.length);}@Testpublic void initList() {List<String> list1 = Arrays.asList("Apple", "Banana", "Cherry"); // Java 8List<String> list2 = List.of("Apple", "Banana", "Cherry"); // Java 9+Assertions.assertEquals(3, list1.size());Assertions.assertEquals(3, list2.size());}@Testpublic void initMap() {Map<String, Integer> map = Map.of("Apple", 1, "Banana", 2, "Cherry", 3); // Java 9+Assertions.assertEquals(1, map.get("Apple"));}@Testpublic void initSet() {Set<String> set = Set.of("Apple", "Banana", "Cherry"); // Java 9+Assertions.assertEquals(3, set.size());}
}