2018. 2.4 Java中集合嵌套集合的练习
创建学生类有姓名学校和年龄 覆盖toString()
1、创建三个学生对象,放到集合ArrayList
2、输出第2名学生的信息
3、删除第1个学生对象
4、在第2个位置插入1个新学生信息
5、判断刘德华这个学生是否存在 存在就打出来,
6、输出全部学生信息 直接打印对象
7、删除所有的学生
package com.glut.demo;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
*
* 创建学生类有姓名学校和年龄 覆盖toString()
1、创建三个学生对象,放到集合ArrayList
2、输出第2名学生的信息
3、删除第1个学生对象
4、在第2个位置插入1个新学生信息
5、判断刘德华这个学生是否存在 存在就打出来,
6、输出全部学生信息 直接打印对象
7、删除所有的学生
* @author qichunlin
*
*/
public class Test {
public static void main(String[] args) {
List list = new ArrayList();
//将对象放入到集合类中
list.add(new Student("小明",15));
list.add(new Student("小黄",20));
list.add(new Student("小林",21));
//输出集合里面指定的对象 用get方法
System.out.println("输出集合里面的第二个对象:\n"+list.get(1));
//删除第一个对象
list.remove(0);//小明这个对象被删掉了
Iterator it = list.iterator();
while(it.hasNext()){
//it.remove();
System.out.println("删除第一个对象之后输出剩下的对象:\n"+it.next());
}
//在第二个位置插入一个学生对象
list.add(1, new Student("小花",23));
System.out.println("掺入一个对象之后集合长度为:"+list.size());
/*System.out.println("for的增强版遍历集合:");//用这个方法便利集合会循环输出集合里面的内容
for(Object li : list ){
System.out.println((List)list);
}*/
//判断里面的对象是否存在我需要的
//int index = -1;
for(int i = 0;i<list.size();i++){
Student stu = (Student)list.get(i);//获取集合里面的对象
if(stu.getName().equals("刘德华")){
System.out.println(stu);
}else{
System.out.println("不存在");
}
}
}
}
package com.glut.demo;
public class Student {
private String name;//学生名字
private int age;//学生年龄
//set 和 get 方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//无参构造方法
public Student() {
super();
}
//有参构造方法
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "学生名字是:" + this.name + "\n年龄是:" + this.age ;
}
}
泛型的例子
package demo9;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Demo {
public static void main(String[] args) {
List<Map<String, List<Student>>> list = new ArrayList<Map<String,List<Student>>>();
Map<String, List<Student>> m1 = new HashMap<String, List<Student>>();
List<Student> stuListM1 = new ArrayList<Student>();
stuListM1.add(new Student("张1","m1",1));
stuListM1.add(new Student("张2","m1",1));
stuListM1.add(new Student("张3","m1",1));
m1.put("1001", stuListM1);
Map<String, List<Student>> m2 = new HashMap<String, List<Student>>();
List<Student> stuListM2 = new ArrayList<Student>();
stuListM2.add(new Student("李1","m2",1));
stuListM2.add(new Student("李2","m2",1));
stuListM2.add(new Student("李3","m2",1));
m2.put("1002", stuListM2);
Map<String, List<Student>> m3 = new HashMap<String, List<Student>>();
List<Student> stuListM3 = new ArrayList<Student>();
stuListM3.add(new Student("付1","m3",1));
stuListM3.add(new Student("付2","m3",1));
stuListM3.add(new Student("付3","m3",1));
m3.put("1003", stuListM3);
list.add(m1);
list.add(m2);
list.add(m3);
for (int i = 0; i < list.size(); i++) {
Map<String,List<Student>> map = list.get(i);
for(String key : map.keySet()){
List<Student> stuList = map.get(key);
System.out.println(key+"学校的学生信息");
for(Student stu : stuList){
System.out.println(stu.getName());
}
}
}
}
}
2018. 2.4 Java中集合嵌套集合的练习的更多相关文章
- 【集合】Java中的具体集合(一)
Java中不止提供了集合框架中的接口,还提供了许多具体的实现. Java中的具体集合 集合类型 描述 ArrayList 一种可以动态增长和缩减的索引序列 LinkedList 一种可以在任何位置进行 ...
- Java中如何克隆集合——ArrayList和HashSet深拷贝
编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法.需要记住的是,Java集合的拷贝构造函数只提供浅拷贝而不是深拷贝,这意味 ...
- java中数组、集合、字符串之间的转换,以及用加强for循环遍历
java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...
- Java中的List集合和迭代器
一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是 ...
- java中 列表,集合,数组之间的转换
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...
- JAVA中所有与集合有关的实现类都是这六个接口的实现类
JAVA中所有与集合有关的实现类都是这六个接口的实现类. Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构. List接口代表按照元素一定的相关顺序来组 ...
- Java中多个集合的交集,并集和差集
一.交集 java中交集使用 A.retainAll(B) ,交集的结果在集合A中. import org.junit.Test; import java.util.HashSet; import j ...
- Java中泛型在集合框架中的应用
泛型是Java中的一个重要概念,上一篇文章我们说过,当元素存入集合时,集合会将元素转换为Object类型存储,当取出时也是按照Object取出的,所以用get方法取出时,我们会进行强制类型转换,并且通 ...
- Java中list<Object>集合去重实例
一:Java中list去重的方法很多,下面说一下其中一种方法:把list里的对象遍历一遍,用list.contain(),如果不存在就放入到另外一个list集合中: 二:实例 这里需要注意的是:使用c ...
- java中数组以及集合
java中数组: 数组在Java里是一种特殊类型,有别于普通的“类的实例”的对象.但实际数组也是一种对象类型,int[]a = new int[5] a是在java栈中分配的引用变量,类型是int[ ...
随机推荐
- Repeater+AspNetPager+Ajax留言板
最近想要巩固下基础知识,于是写了一个比较简单易懂实用的留言板. 部分样式参考了CSDN(貌似最近一直很火),部分源码参照了Alexis. 主要结构: 1.前期准备 2.Repeater+AspNetP ...
- JSONObject,JSONArray,String,Map间的互转
引言 在平常的Web项目开发过程中,json和String.map是最常用的类型和返回结果集,其中也经常会涉及到之间的各种相互转换,下边就总结一下: 1.String转JSONObject ...
- MarkDown基础语法大全
一.MarkDown是什么? Markdown是一种轻量级的「标记语言」,创始人为约翰·格鲁伯,用简洁的语法代替排版,目前被越来越多的知识工作者.写作爱好者.程序员或研究员广泛使用.其常用的标记符号不 ...
- Codeforces Round #501 (Div. 3) 1015D Walking Between Houses
D. Walking Between Houses time limit per test 2 seconds memory limit per test 256 megabytes input st ...
- iOS导航栏添加返回按钮的方式
UIBarButtonItem *backItem = [[UIBarButtonItem alloc] initWithTitle:@"返回上级界面" style:UIBarBu ...
- Restful 3 -- 序列化组件(GET/PUT/DELETE接口设计)、视图优化组件
一.序列化组件 基于上篇随笔的表结构,通过序列化组件的ModelSerializer设计如下三个接口: GET 127.0.0.1:8000/books/{id} # 获取一条数据,返回值:{} PU ...
- 简述raid0,raid1,raid5,raid10 的工作原理及特点
RAID 0 支持1块盘到多块盘,容量是所有盘之和 RAID1 只支持2块盘,容量损失一块盘 RAID 5最少三块盘,不管硬盘数量多少,只损失一块容量 RAID 10最少4块盘,必须偶数硬盘,不管硬盘 ...
- POI Java 导出数据到Excel
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifac ...
- Java面向对象_静态代理模式
概念:为其它对象提供一种代理以控制对这个对象的访问.代理模式说白了就是"真实对象"的代表,在访问对象时引入一定程度的间接性,因为这种间接性可以附加多种用途. public clas ...
- Python 魔术方法及调用方式
魔术方法 调用方式 解释 __new__(cls [,...]) instance = MyClass(arg1, arg2) __new__ 在创建实例的时候被调用 __init__(self [, ...