定义2个类,课程类和选课类

package com.imooc.collection;

/**
* 课程类
*/ public class Course {
private String id;
private String name; public Course(){ } public Course(String id, String name) {
this.id = id;
this.name = name;
} public void setId(String id){
this.id = id;
} public void setName(String name) {
this.name = name;
} public String getId() {
return id;
} public String getName() {
return name;
}
}
package com.imooc.collection;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List; /**
* 备选课程类
* List是一个接口类,不能直接实例化,需要使用它的实现类 ArrayList或LinkedList来进行实例化
*/
public class ListTest {
/**
* 用于存放备选课程的List
*/
private List coursesToSelect; public ListTest(){
this.coursesToSelect = new ArrayList();
} public List getCoursesToSelect() {
return coursesToSelect;
} // 用于往courseToSelect中添加备选课程
public void testAdd(){
// 创建一个课程对象,并通过调用add方法,添加到备选课程List中
Course cr1 = new Course("1", "数据结构");
coursesToSelect.add(cr1);
Course temp = (Course) coursesToSelect.get(0);
System.out.println("添加了课程:" + temp.getId() + ":" + temp.getName()); Course cr2 = new Course("2", "C语言");
coursesToSelect.add(0, cr2);
Course temp2 = (Course) coursesToSelect.get(0);
System.out.println("添加了课程:" + temp2.getId() + ":" + temp2.getName()); // Course数组
Course[] course = {new Course("3", "离散数学"), new Course("4", "汇编语言")};
coursesToSelect.addAll(Arrays.asList(course));
Course temp3 = (Course) coursesToSelect.get(2);
Course temp4 = (Course) coursesToSelect.get(3);
System.out.println("添加了两门课程:" + temp3.getName() + ":" + temp4.getName()); Course[] course2 = {new Course("5", "高等数学"), new Course("6", "大学英语")};
coursesToSelect.addAll(2, Arrays.asList(course2)); } /**
* 获取List中元素的方法
*/
public void testGet(){
int size = coursesToSelect.size();
for(var i=0; i<size; i++){
Course cr = (Course) coursesToSelect.get(i);
System.out.println("课程:" + cr.getId() + ":" + cr.getName());
}
} /**
* 通过迭代器来遍历List
*/
public void testIterator(){
Iterator it = coursesToSelect.iterator();
System.out.println("(iterator)有如下课程待选:");
while (it.hasNext()){
Course cr = (Course) it.next();
System.out.println("课程:" + cr.getId() + ":" + cr.getName()); }
} /**
* 通过 foreach 方法来遍历List
* @param args
*/
public void testForeach(){
System.out.println("(foreach)有如下课程待选:");
for (Object obj: coursesToSelect) {
Course cr = (Course) obj;
System.out.println("课程:" + cr.getId() + ":" + cr.getName()); }
} /**
* 修改 List 中的元素
* @param args
*/
public void testModify(){
coursesToSelect.set(0, new Course("2", "Python之美"));
} /**
* 删除 List 中的元素
* @param args
*/
public void testDelete(){
Course cr = (Course) coursesToSelect.get(0);
coursesToSelect.remove(cr);
coursesToSelect.remove(0); Course[] courses = {(Course) coursesToSelect.get(0), (Course) coursesToSelect.get(1)};
coursesToSelect.removeAll(Arrays.asList(courses));
} public static void main(String args[]){
ListTest lt = new ListTest();
lt.testAdd();
lt.testGet();
lt.testIterator();
lt.testForeach(); lt.testModify(); lt.testDelete();
lt.testForeach(); }
}

Java List 增删改查的更多相关文章

  1. JAVA JDBC 增删改查简单例子

    1.数据库配置文件jdbc.properties driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test username= ...

  2. java中增删改查(CRUD)总结

    对于User表增删改查:1:save(保存方法)  view(查询所有记录) update(更新方法) delete(删除方法) 通过method这个参数进行判断执行不同的操作 2: 具体的实现:   ...

  3. Java MVC 增删改查 实例

    需求:实现增加新部门的功能,对应数据库表示Oracle的dept表 一.Java MVC 增 实现: 1.视图层(V):注册部门 deptAdd.jsp 在注册新部门页面只需输入“部门名称”和“城市” ...

  4. 基于mongodb的java之增删改查(CRUD)

    1,下载驱动https://github.com/mongodb/mongo-java-driver/downloads,导入工程java中 2,建立测试代码 import java.net.Unkn ...

  5. Java数据库增删改查

    数据库为MySQL数据库,Oracle数据库类似: create database db_test;--创建数据库 ';--创建用户 grant all privileges on db_test.* ...

  6. mongoDB用java实现增删改查

    package mongo; import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mo ...

  7. java连接数据库增删改查公共方法

    package dao; import java.io.IOException; import java.sql.CallableStatement; import java.sql.Connecti ...

  8. Java Map增删改查

    示例代码: 学生类 package com.imooc.collection; import java.util.HashSet; import java.util.Set; /** * 学生类 * ...

  9. java mongodb 增删改查 工具类

    package com.jttx.demo;   import com.mongodb.*; import com.mongodb.util.JSON;   import java.net.Unkno ...

随机推荐

  1. js yield

    meikidd 发布在meikidd2015年5月6日view:3397 在文章任何区域双击击即可给文章添加[评注]!浮到评注点上可以查看详情. 隐藏标注 首先请原谅我的标题党(●—●),tj 大神的 ...

  2. C++资源文件初使用[C++菜鸟]

    起因 项目中需要可能变动的一些映射关系,而且是封装成独立的库——一个dll文件. 思路:把excel文件导出成.csv文件,当作资源加载到项目里,读取后拿到全部的字符,再分割处理. 添加资源 VS20 ...

  3. ios--后台返回信息有字符串和数字组成的,如何获取电话号码,让用户能够点击并且进行拨打?

    -(void)callPhone:(NSString*)phoneNumber{ NSString *phoneStr=[NSString stringWithFormat:@"tel:// ...

  4. 3、easyUI-创建 CRUD可创建展开行明细编辑dataGrid(表格)

    同样在上一节中讲到可以编辑的表格,现在讲一般用到的最后一个datagrid(表格)相关的展开明细可编辑的表格: 第三中表格主要应用场景在:列出表格信息,然后点击可以查看详细信息(此处是全部可以编辑,可 ...

  5. 信息属性列表关键字 info.plist

    本文转载至  http://blog.csdn.net/zaitianaoxiang/article/details/6650491 本附录说明了那些可以在束和包的属性列表文件中定义的关键字. 束关键 ...

  6. Axis-Parallel Rectangle

    D - Axis-Parallel Rectangle Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Stat ...

  7. (三)Solrj4到Solrj5的升级之路

    (三)Solrj4到Solrj5的升级之路 Solr5发布了,带来了许多激动人心的新特性,但Solrj的许多接口也发生了变化,升级是痛苦的,但也是必须的,下面就赶紧来看看有哪些代码需要升级吧. 变化1 ...

  8. 解决asp.net中HTML中talbe的行高被内容撑的变高的问题

    将asp.net页面中的如下语句: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  9. Introduction to Mathematical Thinking - Week 7

    Q: Why did nineteenth century mathematicians devote time to the proof of self-evident results? Selec ...

  10. 如何将大数据保存到 MySql 数据库

    1. 什么是大数据 1. 所谓大数据, 就是大的字节数据,或大的字符数据. 2. 标准 SQL 中提供了如下类型来保存大数据类型: 字节数据类型: tinyblob(256B), blob(64K), ...