傑神之Java集合中的List的一些方法

2021-08-14 19:54:00 字數 4093 閱讀 5882

list

list

=new arraylist();

list

.add("a");

list

.add("b");

list

.add("c");

list

.add("d");

// 使用list中新增方法 add(int index, object obj)

// 新增的角標 就是後面元素所在的位置 不能越界

list

.add(4, "x");

system.out.println(list);

// 通過角標獲取對應的元素

object object =

list

.get(4);

system.out.println(object);

// 通過get方法進行遍歷

// for (int i = 0; i < list.size(); i++)

// set方法 不要越界

list

.set(1, "z");

system.out.println(list);

// 根據角標刪除 remove

//返回的是被刪除的元素

object remove =

list

.remove(3);

system.out.println(remove);

system.out.println(list);

list li =

new arraylist();

li.add(111);// 自動裝箱

li.add(222);

li.add(333);

// 刪除 111 元素

li.remove((integer)111); //系統不會自動裝箱 就按數字傳入方法 所有按角標刪除的方法呼叫的 所以越界 integer.valueof(i) 如果要使用按元素刪除需要手動裝箱

system.out.println(li);

在昨天的部落格中提到了使用迭代器(iterator)遍歷陣列 上面arraylist中也提供了get方法 也可利用for迴圈進行遍歷. 那麼問題來了,如果我想在集合中新增一串字元應該如何實現呢?使用迭代器遍歷新增?

list

list

=new arraylist();

list

.add("a");

list

.add("b");

list

.add("c");

list

.add("d");

// 新增完4個元素 集合長度是4

// 如果使用迭代器遍歷 那麼長度必須是固定的 長度不能變

iterator iterator =

list

.iterator();

while (iterator.hasnext())

}system.out.println(list);

我們可以用特有的迭代器操作

list

list

=new arraylist();

list

.add("a");

list

.add("b");

list

.add("c");

list

.add("d");

// 取出特有迭代器

listiterator listiterator =

list

.listiterator();

while (listiterator.hasnext())

}system.out.println(list);

// 注意! 在迭代器中 進行對集合的新增或刪除 要使用 迭代器的方法 不能直接使用集合來操作

vector vector = new vector();

// 新增元素

vector.addelement("a");

vector.addelement("b");

vector.addelement("c");

vector.addelement("d");

system.out.println(vector);

// 迭代器遍歷 獲取 vector中的迭代器

enumeration elements = vector.elements();

while (elements.hasmoreelements())

/** 建立乙個集合 新增a,a,a,b,b,b,c,c,c

* 去除重複

*/ arraylist arraylist = new arraylist();

arraylist.add("a");arraylist.add("a");

arraylist.add("a");arraylist.add("b");

arraylist.add("b");arraylist.add("b");

arraylist.add("c");arraylist.add("c");

arraylist.add("c");

arraylist arraylist2 = new arraylist();

iterator iterator = arraylist.iterator();

while (iterator.hasnext())

}system.out.println(arraylist2);

/* * 建立乙個集合 新增學生資訊

* 去除重複

* 根據上一題思路 應用到這題中 列印確失敗了 這是為什麼呢?

*/arraylist list = new arraylist();

list.add(new student("james", 18));

list.add(new student("james", 18));

list.add(new student("tom", 19));

list.add(new student("tom", 19));

list.add(new student("jellry", 18));

list.add(new student("jellry", 18));

arraylist list1 = new arraylist();

iterator iterator = list.iterator();

while (iterator.hasnext())

}for (object object : list1)

佇列的特點:先進先出

棧的特點:先進後出

使用 linkedlist 模擬棧結構

private

static

void

fun1()

}arraylist 去重

public

static

void

fun2()

}system.out.println(arraylist1);

}去除重複的學生

public

static

void

fun3()

}for (object object : arraylist2)

}public

class student

public

student(string name, int age)

public string getname()

public

void

setname(string name)

public

intgetage()

public

void

setage(int age)

@override

public string tostring()

// 重寫 equals 方法

@override

public boolean equals(object obj)

}

java 集合框架 之 list

list 介面 常見實現類 arraylist是基於陣列實現的,是乙個陣列佇列。可以動態的增加容量!查詢快 1.增加乙個值 list nums new arraylist nums.add 3 nums.add 5 nums.add 1 nums.add 0 system.out.println n...

Java之List集合排序

1.類實現comparable 介面 public class book implements comparable public void setbookname string bookname public double getunitprice public void setunitprice...

Java中list集合框架

list裡物件 1.vector 內部是陣列資料結構,是同步的,不用了 2.arraylist 內部是陣列資料結果,是不同步的,替代了vector,查詢快 3.linkedlist 內部是鍊錶資料結構,是不同步的,增刪快 linkedlist link new linkedlist link.add...