概述
在這篇短文中,我們將會(huì)展示如何把 Map 中的值取出來,轉(zhuǎn)換為一個(gè) Array,、List 或者一個(gè) Set。
當(dāng)然,你可以使用 Java JDK 來進(jìn)行轉(zhuǎn)換,你也可以使用 Guava 來進(jìn)行轉(zhuǎn)換。
首先,讓我們來看看,如何使用原生的 Java JDK把一個(gè) Map 的值換行為 Array。
@Test
public final void givenUsingCoreJava_whenMapValuesConvertedToArray_thenCorrect() {
final Map<Integer, String> sourceMap = createMap();
final Collection<String> values = sourceMap.values();
final String[] targetArray = values.toArray(new String[0]);
}
在上面的代碼中,我們使用了 values.toArray(new String[0]);
來對數(shù)組變量進(jìn)行初始化。
根據(jù): Arrays of Wisdom of the Ancientshttps://shipilev.net/blog/2016/arrays-wisdom-ancients/#_conclusion 文章中的內(nèi)容,使用 toArray(new T[0]) 來對數(shù)組對象進(jìn)行初始化更加高效和干凈。
Map 的值轉(zhuǎn)換為 List
下面,讓我們看看如何使用原生 Java 來把一個(gè) Map 中的值轉(zhuǎn)換為 List。
@Test
public final void givenUsingCoreJava_whenMapValuesConvertedToList_thenCorrect() {
final Map<Integer, String> sourceMap = createMap();
final List<String> targetList = new ArrayList<>(sourceMap.values());
}
可以看到,我們還是使用了 Map 中提供的 values 方法。
使用 Guava
@Test
public final void givenUsingGuava_whenMapValuesConvertedToList_thenCorrect() {
final Map<Integer, String> sourceMap = createMap();
final List<String> targetList = Lists.newArrayList(sourceMap.values());
}
簡單來說,我們只是使用 Guava 的 Lists 方法進(jìn)行了下包裝,核心還是使用 Map 自帶的 values 方法。
Map 的值轉(zhuǎn)換為 Set
最后,讓我們來看看如何使用原生 Java 來把 Map 中的值轉(zhuǎn)換為 Set。
@Test
public void givenUsingCoreJava_whenMapValuesConvertedToS_thenCorrect() {
Map<Integer, String> sourceMap = createMap();
Set<String> targetSet = new HashSet<>(sourceMap.values());
}
結(jié)論
通過上面的代碼,我們可以看到 Java 是非常容易把 Map 中的值取出來轉(zhuǎn)換為其他集合的。
其中核心的方法就是其自帶的 values()
方法。
然后使用其他的類包裝下。文章來源:http://www.zghlxwxcb.cn/news/detail-421928.html
Java 把 Map 的值(Value)轉(zhuǎn)換為 Array, List 或 Set - Java - OSSEZ概述在這篇短文中,我們將會(huì)展示如何把 Map 中的值取出來,轉(zhuǎn)換為一個(gè) Array,、List 或者一個(gè) Set。 當(dāng)然,你可以使用 Java JDK 來進(jìn)行轉(zhuǎn)換,你也可以使用 Guava 來進(jìn)行轉(zhuǎn)換。 首先,讓我們來看看,如何使用原生的 Java JDK把一個(gè) Map 的值換行為 Array。 @Test public final void givenUsingCoreJava_whenMapValue…https://www.ossez.com/t/java-map-value-array-list-set/14388#h-1文章來源地址http://www.zghlxwxcb.cn/news/detail-421928.html
到了這里,關(guān)于Java 把 Map 的值(Value)轉(zhuǎn)換為 Array, List 或 Set的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!