建体彩网|中彩网双色球连号|
?
快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

亞洲必贏App官方下:JAVA提高教程(6)認識List列表

?

列表是很常用的數據布局,感到比Map和Set用的頻率要高一些吧,由于我常常用其返回數據庫的操作結果集

package collection.lession6;

import java.util.ArrayList;

import java.util.Iterator;

import java.util.LinkedList;

import java.util.List;

import java.util.ListIterator;

import java.util.Stack;

import java.util.Vector;

/**

* 老紫竹JAVA前進教程(6)-熟識List列表

* List可以正確節制在聚攏里面的先后順序。

* 可以直接經由過程數據的位置造訪數據。

* 一樣平常容許重復數據

* 一樣平常容許null,且允許多個null

*

* @author 老紫竹

*

*/

public class Lession6 {

public static void main(String[] args) {

// 下面是List里面常用的實現類

// 大年夜小可變列表的實現,容許任何數據加入

ArrayList arrayList = new ArrayList();

// 同樣是大年夜小可變列表的實現.

// 與ArrayList的最大年夜差別便是這個類的措施是同步(synchronized)的

// 具體的差別,請參考

// 看源代碼理解ArrayList和Vector 的真正差別

// http://www.java2000.net/p9750

Vector vector = new Vector();

// 實現了雙向行列步隊的節制,包括頭尾的操作

// 可用于客棧和FIFO操作等

LinkedList linkedList = new LinkedList();

// 集成自 Vector

// 供給了LIFO的客棧操作要領

Stack stack = new Stack();

// -----------------

// 下面以ArrayList作為例子,看看列表的各個措施

List list = new ArrayList();

// 構建第二個列表

List list2 = new ArrayList();

// 向列表的尾部添加指定的數據

list.add(123);

// 在列表的指定位置插入指定命亞洲必贏App官方下據

// 我們在最前面插入數據

// 列表的位置索引從0開始

list.add(0, 456);

// 將list2里面的數據,整個放到li亞洲必贏App官方下st1的尾部去

// 留意此處可所以任何聚攏類,不限于列表

list.addAll(list2);

// 將list2里亞洲必贏App官方下面的數據,整個放到list1指定位置的后面

// 即是插入一段數據

list.addAll(2, list2);

// 清空列表,刪除里面所有的數據

list.clear();

// 判斷列表里是否包孕某個數據

boolean found = list.contains(123);

// 判斷列表是否包孕了另一個聚攏的所稀有據

// 留意此處可所以任何聚攏類,不限于列表

boolean ok = list.containsAll(list2);

// 得到指定位亞洲必贏App官方下置的數據

// 假如位置跨越了列表的范圍 0 到 list.size()-1

// 則拋出非常:IndexOutOfBoundsException

Object obj = list.get(3);

// 獲得數據在列表中的位置

// 假如沒找到,返回-1

// 位置索引從0開始

int index = list.indexOf(456);

// 判斷列表是不是空的

boolean empty = list.isEmpty();

// 列表的迭代器操作

// 順序嚴格按照列表的保存的順序

Iterator it = list.iterator();

// 獲得數據在列表著末一次呈現的位置

// 得當于有重復數據的列表

index = list.lastIndexOf(456);

// 列表的另一個迭代器

ListIterator listIT = list.listIterator();

// 列表的另一個迭代器,可以指定肇端位置

ListIterator listIT2 = list.listIterator(3);

// 刪除某個位置的數據

list.remove(3);

// 刪除指定工具的第一個呈現的位置

// 留意,假如是整數,要區分其與remove(亞洲必贏App官方下int)的差別

// 建議用 remove(new Integer(123)); 來刪除數據工具

list.remove(new Integer(123));

// 刪除列表里在另一個聚攏里存在的數據

list.removeAll(list2);

// 只保留在另一個聚攏里存在的數據,即是交集

list.retainAll(list2);

// 調換指定位置的數據

list.set(3, 999);

// 列表數據的數量

int size = list.size();

// 獲得一個子數組

List subList = list.subList(2, 10);

// 將聚攏轉化為數組

Object[] objs = list.toArray();

// 將聚攏轉化為指定款式的數組

// 比如聚攏里保存的都是String

String[] objs2 = (String[]) list.toArray(new String[0]);

}

}

總結:

實際上我們最常用的照樣 ArrayList, Vector由于是同步措施,只有在多線程,以及全局的數據時,我才斟酌用。

免責聲明:以上內容源自網絡,版權歸原作者所有,如有侵犯您的原創版權請告知,我們將盡快刪除相關內容。

您可能還會對下面的文章感興趣:

建体彩网
山西11选5开奖查询结果 好运彩3计划 北京快3玩法规则 天津快乐10分 荣耀棋牌 浙江体彩20选5开奖结果查询 蜀山四川麻将 上海天天彩选4历史开奖 湖北十一选五任选走势图 指腕引体球