java 修改list_Java中List的增,删,改,查

package Colection;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.Iterator;

import java.util.List;

//备选课程类

public class ListTest {

//用于存放备选课程的List

public List coursesToSelect;

public ListTest(){

this.coursesToSelect = new ArrayList();//初始化

}

//用于往coursesToSelect中添加课程

public void testAdd(){

//创建一个课程对象

Course cr1 = new Course("1", "数据结构");

coursesToSelect.add(cr1);//调用coursesToSelect方法添加课程

Course temp = (Course) coursesToSelect.get(0);

System.out.println("添加了课程:"+temp.id+":"+temp.name);

//第一种添加方法

Course cr2 = new Course("2", "c语言");

coursesToSelect.add(0, cr2);//在表头添加cr2

Course temp2 = (Course)coursesToSelect.get(0);

System.out.println("添加了课程:"+temp2.id+":"+temp2.name);

//List中的数据可以重复

coursesToSelect.add(cr1);//调用coursesToSelect方法添加课程

Course temp0 = (Course) coursesToSelect.get(2);

System.out.println("添加了课程:"+temp0.id+":"+temp0.name);

//以下方法会抛出数组下标越界异常

//Course cr2 = new Course("3", "易语言");

//coursesToSelect.add(4, cr2);//插入位置大于数组长度

//第二种添加方法

Course [] course = {new Course("3", "离散数学"),new Course("4", "汇编语言")};//创建一个course对象数组

coursesToSelect.addAll(Arrays.asList(course));

Course temp3 = (Course)coursesToSelect.get(3);

Course temp4 = (Course)coursesToSelect.get(4);

System.out.println("添加了两名课程:"+temp3.id+":"+temp3.name+";"+temp4.id+":"+temp4.name);

//第三种添加方法

Course [] course2 = {new Course("5", "高等数学"),new Course("6", "大学英语")};

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);

}

//通过for循环取得List中的元素的方法

public void testGet(){

//通过size()方法获取长度

System.out.println("有如下课程待选:");

int size = coursesToSelect.size();

for (int i = 0; i < size; i++) {

Course cr = (Course) coursesToSelect.get(i);

System.out.println("课程:"+cr.id+":"+cr.name);

}

}

//通过迭代器遍历List

public void testIterator() {

System.out.println("有如下课程待选(通过迭代器访问):");

//通过集合的Iterator方法,取得迭代器实例

Iterator it = coursesToSelect.iterator();

while (it.hasNext()) {

Course cr = (Course)it.next();

System.out.println("课程:"+cr.id+":"+cr.name);

}

}

//通过for each方法遍历

public void testForeach() {

System.out.println("有如下课程待选(通过foreach访问):");

for (Object obj : coursesToSelect) {//元素存入List后为Object类型,输出后也是Object类型

Course cr = (Course)obj;//类型强转

System.out.println("课程:"+cr.id+":"+cr.name);

}

}

//修改List中的元素

public void testModify() {

//通过调用set()方法来修改相应位置上的元素值

coursesToSelect.set(4, new Course("7", "毛概"));

}

//删除List中的元素

public void testRemove() {

//Course cr =(Course) coursesToSelect.get(4);

//System.out.println("我是课程:"+cr.id+":"+cr.name+". 我将要被删除");

//coursesToSelect.remove(cr);//通过获取值进行删除

System.out.println("即将删除位置4和5上的值.");

Course[] course ={(Course) coursesToSelect.get(4),(Course) coursesToSelect.get(5)};

coursesToSelect.removeAll(Arrays.asList(course));

//coursesToSelect.remove(4);//通过索引值进行删除

System.out.println("成功删除课程!");

testForeach();

}

//往List中添加一些奇怪的东西

public void testType() {

coursesToSelect.add("我不是课程,只是一个字符串.");

}

public static void main(String[] args) {

ListTest lt = new ListTest();

lt.testAdd();

lt.testType();

lt.testGet();

lt.testIterator();

lt.testForeach();

lt.testModify();

lt.testForeach();

lt.testRemove();

}

}

运行结果

添加了课程:1:数据结构

添加了课程:2:c语言

添加了课程:1:数据结构

添加了两名课程:3:离散数学;4:汇编语言

添加了两名课程:5:高等数学;6:大学英语

有如下课程待选:

课程:2:c语言

课程:1:数据结构

课程:5:高等数学

课程:6:大学英语

课程:1:数据结构

课程:3:离散数学

课程:4:汇编语言

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值