Java編程通過list接口實(shí)現(xiàn)數(shù)據(jù)的增刪改查代碼示例
List接口常用的實(shí)現(xiàn)ArrayList。
常用方法:add(Object obj) 增加一個(gè)元素
add(int index,Object obj) 在指定索引位置添加元素
remove(int index) 刪除指定位置的元素
remove(Objiect) 從列表中刪除元素
set(index,Object) 修改指定位置的元素
get(int index) 獲取指定位置的元素
size() 獲取集合大小
contains(Object obj) 查找集合中是否存在傳入的元素
代碼實(shí)現(xiàn):
創(chuàng)建一個(gè)課程類:
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(){}
}
對(duì)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; //定義一個(gè)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接口實(shí)現(xiàn)數(shù)據(jù)的增刪改查代碼示例的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Java實(shí)現(xiàn)跳躍表(skiplist)的簡單實(shí)例、Java多線程Callable接口實(shí)現(xiàn)代碼示例等,有什么問題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的。感謝朋友們對(duì)本站的支持!
上一篇:Java編程幾個(gè)循環(huán)實(shí)例代碼分享
欄 目:Java編程
下一篇:java編程實(shí)現(xiàn)優(yōu)先隊(duì)列的二叉堆代碼分享
本文標(biāo)題:Java編程通過list接口實(shí)現(xiàn)數(shù)據(jù)的增刪改查代碼示例
本文地址:http://www.jygsgssxh.com/a1/Javabiancheng/8440.html
您可能感興趣的文章
- 01-10Java咖啡館(1)——嘆咖啡
- 01-10Java Socket編程(三) 服務(wù)器Sockets
- 01-10Java進(jìn)階:Struts多模塊的技巧
- 01-10Java Socket編程(一) Socket傳輸模式
- 01-10Java Socket編程(二) Java面向連接的類
- 01-10Java運(yùn)行時(shí)多態(tài)性的實(shí)現(xiàn)
- 01-10Java經(jīng)驗(yàn)點(diǎn)滴:處理沒有被捕獲的異常
- 01-10Java Socket編程(四) 重復(fù)和并發(fā)服務(wù)器
- 01-10Java中的浮點(diǎn)數(shù)分析
- 01-10面向?qū)ο缶幊?Java中的抽象數(shù)據(jù)類型


閱讀排行
本欄相關(guān)
- 01-10Java咖啡館(1)——嘆咖啡
- 01-10JVM的垃圾回收機(jī)制詳解和調(diào)優(yōu)
- 01-10Java Socket編程(三) 服務(wù)器Sockets
- 01-10Java進(jìn)階:Struts多模塊的技巧
- 01-10J2SE 1.5版本的新特性一覽
- 01-10Java Socket編程(一) Socket傳輸模式
- 01-10Java運(yùn)行時(shí)多態(tài)性的實(shí)現(xiàn)
- 01-10Java Socket編程(二) Java面向連接的類
- 01-10Java Socket編程(四) 重復(fù)和并發(fā)服務(wù)
- 01-10Java經(jīng)驗(yàn)點(diǎn)滴:處理沒有被捕獲的異常
隨機(jī)閱讀
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10使用C語言求解撲克牌的順子及n個(gè)骰子
- 01-10delphi制作wav文件的方法
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 04-02jquery與jsp,用jquery


