java實現(xiàn)列表、集合與數(shù)組之間轉(zhuǎn)化的方法
本文實例講述了java實現(xiàn)列表、集合與數(shù)組之間轉(zhuǎn)化的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Test2 {
public static void main(String[] args) {
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
// list.add(1);//會產(chǎn)生java.lang.ArrayStoreException異常
// 當(dāng)list中的數(shù)據(jù)類型都一致時可以將list轉(zhuǎn)化為數(shù)組
Object[] array = list.toArray();
System.out.println("從list轉(zhuǎn)換成的對象數(shù)組長度為:" + array.length);
// 在轉(zhuǎn)化為其它類型的數(shù)組時需要強(qiáng)制類型轉(zhuǎn)換,并且,要使用帶參數(shù)的toArray方法,參數(shù)為對象數(shù)組,
// 將list中的內(nèi)容放入?yún)?shù)數(shù)組中,當(dāng)參數(shù)數(shù)組的長度小于list的元素個數(shù)時,會自動擴(kuò)充數(shù)組的長度以適應(yīng)list的長度
String[] array1 = (String[]) list.toArray(new String[0]);
System.out.println("從list轉(zhuǎn)換成的字符串?dāng)?shù)組長度為:" + array1.length);
// 分配一個長度與list的長度相等的字符串?dāng)?shù)組
String[] array2 = (String[]) list.toArray(new String[list.size()]);
System.out.println("從list轉(zhuǎn)換成的字符串?dāng)?shù)組長度為:" + array2.length);
list.clear();
// 將數(shù)組轉(zhuǎn)換成list
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}
System.out.println("將數(shù)組轉(zhuǎn)換成list的元素個數(shù)為:" + list.size());
list.clear();
// 直接使用Arrays的asList方法
list = Arrays.asList(array);
System.out.println("將數(shù)組轉(zhuǎn)換成list的元素個數(shù)為:" + list.size());
Set set = new HashSet();
set.add("a");
set.add("b");
// 將set轉(zhuǎn)換為數(shù)組
array = set.toArray();
array1 = (String[]) set.toArray(new String[0]);
array2 = (String[]) set.toArray(new String[set.size()]);
System.out.println("從Set轉(zhuǎn)換成的對象數(shù)組長度為:" + array.length);
System.out.println("從Set轉(zhuǎn)換成的字符串?dāng)?shù)組長度為:" + array2.length);
// 數(shù)組轉(zhuǎn)換成Set
// 將數(shù)組轉(zhuǎn)換成List后,再用List構(gòu)造Set
set = new HashSet(Arrays.asList(array));
System.out.println("將數(shù)組轉(zhuǎn)換成Set的元素個數(shù)為:" + list.size());
// 將Set清空,然后把數(shù)組轉(zhuǎn)換成的list全部add
set.clear();
set.addAll(Arrays.asList(array1));
System.out.println("將數(shù)組轉(zhuǎn)換成Set的元素個數(shù)為:" + list.size());
}
}
希望本文所述對大家的java程序設(shè)計有所幫助。
相關(guān)文章
Java中增強(qiáng)for循環(huán)在一維數(shù)組和二維數(shù)組中的使用方法
下面小編就為大家?guī)硪黄狫ava中增強(qiáng)for循環(huán)在一維數(shù)組和二維數(shù)組中的使用方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-10-10Java序列化和反序列化_動力節(jié)點Java學(xué)院整理
把對象轉(zhuǎn)換為字節(jié)序列的過程稱為對象的序列化,把字節(jié)序列恢復(fù)為對象的過程稱為對象的反序列化。接下來通過本文給大家介紹Java序列化和反序列化及主要的兩種用途,感興趣的的友參考下吧2017-05-05SpringBoot中使用Quartz管理定時任務(wù)的方法
這篇文章主要介紹了SpringBoot中使用Quartz管理定時任務(wù)的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09Java網(wǎng)絡(luò)編程UDP實現(xiàn)消息發(fā)送及聊天
這篇文章主要為大家詳細(xì)介紹了Java網(wǎng)絡(luò)編程UDP實現(xiàn)消息發(fā)送及聊天,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-07-07SpringCloud+RocketMQ實現(xiàn)分布式事務(wù)的實踐
分布式事務(wù)已經(jīng)成為了我們的經(jīng)常使用的。所以我們來一步一步的實現(xiàn)基于RocketMQ的分布式事務(wù)。感興趣的可以了解一下2021-10-10Java Swing中的JButton、JComboBox、JList和JColorChooser組件使用案例
這篇文章主要介紹了Java Swing中的按鈕(JButton)、組合框(JComboBox)、下拉列表(JList)和顏色選擇器(JColorChooser)組件使用案例,需要的朋友可以參考下2014-10-10