Java編程通過list接口實現(xiàn)數(shù)據(jù)的增刪改查代碼示例
List接口常用的實現(xiàn)ArrayList。
常用方法:add(Object obj) 增加一個元素
add(int index,Object obj) 在指定索引位置添加元素
remove(int index) 刪除指定位置的元素
remove(Objiect) 從列表中刪除元素
set(index,Object) 修改指定位置的元素
get(int index) 獲取指定位置的元素
size() 獲取集合大小
contains(Object obj) 查找集合中是否存在傳入的元素
代碼實現(xiàn):
創(chuàng)建一個課程類:
package imooc;
//課程類
public class Course {
public String id;
public String name;
public Course(String id,String name){
this.id=id;
this.name=name;
}
public Course(){}
}
對List進(jìn)行操作:
package imooc;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
//備選課程類
public class ListTest {
public List coursesToSelect; //定義一個List類,用于存放備選課程
public ListTest(){
this.coursesToSelect=new ArrayList(); //ArraryList()方法
}
public void testAdd(){
Course cr1=new Course("1","數(shù)據(jù)結(jié)構(gòu)");
coursesToSelect.add(cr1); //添加元素
Course temp=(Course)coursesToSelect.get(0); //取元素
System.out.println("添加了課程:"+temp.id+":"+temp.name);
Course cr2=new Course("2","c語言");
coursesToSelect.add(0, cr2);
Course temp2=(Course)coursesToSelect.get(0);
System.out.println("添加了課程:"+temp2.id+":"+temp2.name);
//另一種添加方法
Course[] course={new Course("3","離散數(shù)學(xué)"),new Course("4","匯編語言")};
coursesToSelect.addAll(Arrays.asList(course));
Course temp3=(Course)coursesToSelect.get(2);
Course temp4=(Course)coursesToSelect.get(3);
System.out.println("添加了兩門課程:"+ temp3.id+" "+temp3.name+" "+temp4.id+" "+temp4.name);
//另一種添加方法
Course[] course2={new Course("5","數(shù)字電路"),new Course("6","大學(xué)英語")};
coursesToSelect.addAll(2, Arrays.asList(course2));
Course temp5=(Course)coursesToSelect.get(2);
Course temp6=(Course)coursesToSelect.get(3);
System.out.println("添加了兩門課程:"+ temp5.id+" "+temp5.name+" "+temp6.id+" "+temp6.name);
}
//遍歷取得List中國的元素
public void testGet(){
int size=coursesToSelect.size();
System.out.println("有以下課程:");
for(int i=0;i<size;i++){
Course cr=(Course)coursesToSelect.get(i);
System.out.println(cr.id+" "+cr.name);
}
}
//通過迭代器遍歷List元素
public void testIterator(){
Iterator it=coursesToSelect.iterator();
System.out.println("有如下課程(通過迭代器遍歷):");
while(it.hasNext()){
Course cr2=(Course)it.next();
System.out.println(cr2.id+" "+cr2.name);
}
}
public void testForeach(){
System.out.println("有如下課程(通過foreach遍歷):");
for(Object obj:coursesToSelect){
Course cr3=(Course)obj;
System.out.println(cr3.id+" "+cr3.name);
}
}
//修改List中的元素
public void xiugai(){
coursesToSelect.set(3, new Course("5","軟件工程"));
}
//刪除List中的元素
public void testRemove(){
Course cr4=(Course)coursesToSelect.get(3);
System.out.println("我是課程:"+cr4.name+"我即將被刪除");
coursesToSelect.remove(3);
System.out.println("刪除成功");
}
public void testRemove2(){
Course[] cr5={(Course)coursesToSelect.get(3),(Course)coursesToSelect.get(4)};
coursesToSelect.removeAll(Arrays.asList(cr5));
testForeach();
}
public static void main(String[] args){
ListTest it=new ListTest();
it.testAdd();
it.xiugai();
it.testGet();
it.testRemove2();
//it.testIterator();
//it.testForeach();
}
}
總結(jié)
以上就是本文關(guān)于Java編程通過list接口實現(xiàn)數(shù)據(jù)的增刪改查代碼示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Java實現(xiàn)跳躍表(skiplist)的簡單實例、Java多線程Callable接口實現(xiàn)代碼示例等,有什么問題可以隨時留言,小編會及時回復(fù)大家的。感謝朋友們對本站的支持!
相關(guān)文章
request.getRequestURL()等方法得到路徑的區(qū)別及說明
這篇文章主要介紹了request.getRequestURL()等方法得到路徑的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
介紹Java的大數(shù)類(BigDecimal)和八種舍入模式
在實際應(yīng)用中,需要對更大或者更小的數(shù)進(jìn)行運(yùn)算和處理。Java在java.math包中提供的API類BigDecimal,用來對超過16位有效位的數(shù)進(jìn)行精確的運(yùn)算。本文將介紹Java中的大數(shù)類BigDecimal及其八種舍入模式,有需要的可以參考借鑒。2016-08-08
java如何實時動態(tài)獲取properties文件的內(nèi)容
這篇文章主要介紹了java如何實時動態(tài)獲取properties文件的內(nèi)容,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09
Java語言中finally是否一定會執(zhí)行你知道嗎
這篇文章主要為大家詳細(xì)介紹了Java finally是否一定會執(zhí)行,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02
使用Spring和Redis創(chuàng)建處理敏感數(shù)據(jù)的服務(wù)的示例代碼
許多公司處理的用戶敏感數(shù)據(jù)由于法律限制不能永久存儲,根據(jù)規(guī)定,這些數(shù)據(jù)的存儲時間不能超過預(yù)設(shè)期限,并且最好在用于服務(wù)目的之后就將其刪除,解決這個問題有多種可能的方案,在本文中,我想展示一個利用 Spring 和 Redis 處理敏感數(shù)據(jù)的應(yīng)用程序的簡化示例2025-04-04

