當前位置:首頁 » 編程語言 » java數組list

java數組list

發布時間: 2022-08-30 19:18:05

『壹』 java,List得到數組長度的方法

java list得到屬豬長度的方法如下:

1 java中的length屬性是針對數組說的,比如說你聲明了一個數組,想知道這個數組的長度則用到了length這個屬性.

2 java中的length()方法是針對字元串String說的,如果想看這個字元串的長度則用到length()這個方法.

3.java中的size()方法是針對泛型集合說的,如果想看這個泛型有多少個元素,就調用此方法來查看

方法一:超級for循環遍歷for(String attribute : list) {System.out.println(attribute)}

方法二:對於ArrayList來說速度比較快, 用for循環, 以size為條件遍歷for(int i = 0 ; i < list.size() ; i++) {system.out.println(list.get(i));}

方法三:集合類的通用遍歷方式, 從很早的版本就有, 用迭代器迭代Iterator it = list.iterator();while(it.hasNext()) {System.ou.println(it.next)}

(1)java數組list擴展閱讀:

Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程 。

Java具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點 。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。

由四方面組成:

(1)Java編程語言

(2)Java類文件格式

(3)Java虛擬機

(4)Java應用程序介面

當編輯並運行一個Java程序時,需要同時涉及到這四種方面。使用文字編輯軟體(例如記事本、寫字板、UltraEdit等)或集成開發環境(Eclipse、MyEclipse等)在Java源文件中定義不同的類,通過調用類(這些類實現了Java API)中的方法來訪問資源系統,把源文件編譯生成一種二進制中間碼,存儲在class文件中,然後再通過運行與操作系統平台環境相對應的Java虛擬機來運行class文件,執行編譯產生的位元組碼,調用class文件中實現的方法來滿足程序的Java API調用。

『貳』 java 中怎麼給list數組賦值

用List的toArray(T[] t) 方法就行。

例子 整數和字元串,其它都一樣。

List<Integer>a=newLinkedList<Integer>();
for(inti=0;i<50;i++)
a.add(i);

Integer[]b=newInteger[a.size()];
b=a.toArray(b);

System.out.println(Arrays.toString(b));

List<String>c=newLinkedList<String>();
StringBuildersb=null;
for(inti=0;i<50;i++){
sb=newStringBuilder();
for(intj=0;j<10;j++)
sb.append((char)((Math.random()*26)+65));
c.add(sb.toString());
}
String[]d=newString[c.size()];
d=c.toArray(d);
System.out.println(Arrays.toString(d));

來自網友的分享,希望能幫到你

『叄』 java里的數組和list分別在什麼情況下使用

數組長度固定,List未限定長度,且支持的功能更多,最常用的ArrayList底層實際上也是使用數組實現。不需要復雜功能和確定長度的情況下,使用數組效率更高,通常情況建議使用List。

『肆』 java list和數組的區別

List和ArrayList的區別在於:

1、在編程語言中ArrayList類是.Net Framework提供的用於數據存儲和檢索的專用類。List 類可以簡單視之為雙向連結串列,以線性列的方式管理物件集合。List類是ArrayList類的泛型等效類。

2、ArrayList繼承了IList介面,所以它可以很方便的進行數據的添加,插入和移除。List的大部分用法都與ArrayList相似,List類也繼承了IList介面。

3、在ArrayList中可以插入不同類型的數據。ArrayList會把所有插入其中的數據都當作為object類型來處理,這其中存在裝箱與拆箱的操作,會對系統造成性能上的損耗。而List需要聲明其數據的對象類型。聲明後插入其他類型數據,IDE就會報錯,且不能通過編譯。


(4)java數組list擴展閱讀:

一、List泛型

通過允許指定泛型類或方法操作的特定類型,泛型功能將類型安全的任務從程序員轉移給了編譯器。不需要編寫代碼來檢測數據類型是否正確,因為會在編譯時強制使用正確的數據類型。減少了類型強制轉換的需要和運行時錯誤的可能性。泛型提供了類型安全但沒有增加多個實現的開銷。

二、裝箱與拆箱的概念:

1、裝箱:就是將值類型的數據打包到引用類型的實例中 比如將int類型的值123賦給object對象o

int i=123; object o=(object)i;

2、拆箱:就是從引用數據中提取值類型 比如將object對象o的值賦給int類型的變數i

object o=123; int i=(int)o;

3、裝箱與拆箱的過程是很損耗性能的。

『伍』 java 怎麼把數組轉為list

1.List轉換成為數組。(這里的List是實體是ArrayList)

調用ArrayList的toArray方法。

toArray

public <T> T[] toArray(T[]
a)返回一個按照正確的順序包含此列表中所有元素的數組;返回數組的運行時類型就是指定數組的運行時類型。如果列表能放入指定的數組,則返回放入此列表元
素的數組。否則,將根據指定數組的運行時類型和此列表的大小分配一個新的數組。

如果指定的數組能容納列表並有剩餘空間(即數組的元素比列表的多),那麼會將數組中緊跟在集合末尾的元素設置為 null。這對確定列表的長度很有用,但只 在調用方知道列表中不包含任何 null 元素時才有用。

指定者:

介面 Collection<E> 中的 toArray

指定者:

介面 List<E> 中的 toArray

覆蓋:

類 AbstractCollection<E> 中的 toArray

參數:

a - 要存儲列表元素的數組,如果它足夠大的話;否則,它是一個為存儲列表元素而分配的、具有相同運行時類型的新數組。

返回:

包含列表元素的數組。

拋出:

ArrayStoreException - 如果 a 的運行時類型不是此列表中每個元素的運行時類型的超類型。

具體用法:

List list = new ArrayList();
list.add("1");
list.add("2");
final int size =list.size();
String[] arr = (String[])list.toArray(new String[size]);

2.數組轉換成為List。

調用Arrays的asList方法.

asList

public static <T>
List<T> asList(T... a)返回一個受指定數組支持的固定大小的列表。(對返回列表的更改會「直寫」到數組。)此方法同
Collection.toArray 一起,充當了基於數組的 API 與基於 collection 的 API
之間的橋梁。返回的列表是可序列化的,並且實現了 RandomAccess。

此方法還提供了一個創建固定長度的列表的便捷方法,該列表被初始化為包含多個元素:

List stooges = Arrays.asList("Larry", "Moe", "Curly");

參數:

a - 支持列表的數組。

返回:

指定數組的列表視圖。

另請參見:

Collection.toArray()

具體用法:

String[] arr = new String[] {"1", "2"};

List list = Arrays.asList(arr);

『陸』 java 怎麼把list轉換成數組

ArrayList<String> list=new ArrayList<String>();
String strings[]=(String [])list.toArray();
這樣寫代碼個人覺得應該沒什麼問題,編譯也沒有問題。可是具體運行的時候報異常,如下:Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object;
但是這么寫是沒有問題的:
ArrayList<String> list=new ArrayList<String>();
String strings[]=new String[list.size()];
for(int i=0,j=list.size();i<j;i++){
strings[i]=list.get(i);
}
對於這個現象我們可以這么解釋:Java中允許向上和向下轉型,但是這個轉型是否成功是根據Java虛擬機中這個對象的類型來實現的。Java虛擬機中保存了每個對象的類型。而數組也是一個對象。數組的類型是[Ljava.lang.Object。把[Ljava.lang.Object轉換成[Ljava.lang.String是顯然不可能的事情,因為這里是一個向下轉型,而虛擬機只保存了這是一個Object的數組,不能保證數組中的元素是String的,所以這個轉型不能成功。數組裡面的元素只是元素的引用,不是存儲的具體元素,所以數組中元素的類型還是保存在Java虛擬機中的。
根據上面的解釋,我們可以把這個問題歸納到下面這個模型:
Object objs[]=new Object[10];
String strs[]=(String[])objs;
這樣子和剛才上面編譯錯誤是一樣的。如果我們修改一下這個代碼,如下:
String strs[]=new String[10];
Object objs[]=strs;
這樣子就可以編譯通過了。所以這個問題我們可以歸結為一個Java轉型規則的問題。下面談一下Java數組對范型的支持問題。
JDK5中已經有了對范型的支持,這樣可以保證在集合和Map中的數據類型的安全,可是,List的toArray方法返回的竟然是Object []讓人很迷惑。個人感覺應該可以根據范型,直接返回相應的T []。仔細看了一下JDK的發現List轉化為array有兩個方法:
public Object[] toArray();
這個方法把List中的全部元素返回一個相同大小的數組,數組中的所有元素都為Object類型。
public <T> T[] toArray(T[] a);
這個方法把List中的全部元素返回一個相同大小的數組,數組中的所有元素都為T類型。
List如此設計是因為Java編譯器不允許我們new范型數組。也就是說你不能這么定義一個數組:
T arr=new T[size];
但是你卻可以用T[]來表示數組,而且可以把數組強制轉化為T[]。比如List中的public <T> T[] toArray(T[] a)是這么實現的:
public <T> T[] toArray(T[] a) {
if (a.length < size)
a = (T[])java.lang.reflect.Array.
newInstance(a.getClass().getComponentType(), size);
System.array(elementData, 0, a, 0, size);
if (a.length > size)
a[size] = null;
return a;
}
從上面代碼中可以看到,因為你不知道這個數組的類型,你必須通過反射機制創建這個數組(a.getClass().getComponentType()方法是取得一個數組元素的類型)。
最終,List轉換為Array可以這樣處理:
ArrayList<String> list=new ArrayList<String>();
String[] strings = new String[list.size()];
list.toArray(strings);
反過來,如果要將數組轉成List怎麼辦呢?如下:
String[] s = {"a","b","c"};
List list = java.util.Arrays.asList(s);

『柒』 java中如何將list中的的一維數組的元素輸出

java中將list中的一維數組中的元素取出需要2步。第一步:獲取list的迭代器,將數組從迭代器中遍歷取出:第二部:對取出的數組進行遍歷,取出數組中存儲的元素。
java的list集合中只能存儲引用型變數,不能存儲基本類型的變數。所以當list存儲數組時,會將數組本身存入集合,而不是存儲數組中的元素。

『捌』 list java 是數組還是集合

List在java里是一種集合,類型為介面。其實現類中ArrayList與數組最為相似,但並非數組。

『玖』 java中怎麼定義list的二維數組

list 二維數組: List<Object>[][]lists=new ArrayList[4][4];
存放二維對象類型的list二維數組: List<Object[][]>[][] list=new ArrayList[4][4];
存放二維數組的list: List<Object[][]> list=new ArrayList<Object[][]>()

熱點內容
php批量查詢 發布:2025-01-16 10:43:38 瀏覽:917
適合搭建代理伺服器的雲 發布:2025-01-16 10:42:49 瀏覽:428
我的世界手機版伺服器怎麼注冊 發布:2025-01-16 10:41:30 瀏覽:614
小米雲電視伺服器 發布:2025-01-16 10:37:03 瀏覽:350
php開源wiki 發布:2025-01-16 10:27:19 瀏覽:189
sql加欄位備注 發布:2025-01-16 10:21:49 瀏覽:565
線割編程教程 發布:2025-01-16 10:21:03 瀏覽:18
谷歌瀏覽器緩存刪除 發布:2025-01-16 10:19:36 瀏覽:414
資料庫txt 發布:2025-01-16 10:16:41 瀏覽:457
小米賬號王者傳奇腳本掛機 發布:2025-01-16 10:07:25 瀏覽:917