创建学生类有姓名学校和年龄 覆盖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中集合嵌套集合的练习的更多相关文章

  1. 【集合】Java中的具体集合(一)

    Java中不止提供了集合框架中的接口,还提供了许多具体的实现. Java中的具体集合 集合类型 描述 ArrayList 一种可以动态增长和缩减的索引序列 LinkedList 一种可以在任何位置进行 ...

  2. Java中如何克隆集合——ArrayList和HashSet深拷贝

    编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法.需要记住的是,Java集合的拷贝构造函数只提供浅拷贝而不是深拷贝,这意味 ...

  3. java中数组、集合、字符串之间的转换,以及用加强for循环遍历

    java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...

  4. Java中的List集合和迭代器

    一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是 ...

  5. java中 列表,集合,数组之间的转换

    java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...

  6. JAVA中所有与集合有关的实现类都是这六个接口的实现类

    JAVA中所有与集合有关的实现类都是这六个接口的实现类. Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构. List接口代表按照元素一定的相关顺序来组 ...

  7. Java中多个集合的交集,并集和差集

    一.交集 java中交集使用 A.retainAll(B) ,交集的结果在集合A中. import org.junit.Test; import java.util.HashSet; import j ...

  8. Java中泛型在集合框架中的应用

    泛型是Java中的一个重要概念,上一篇文章我们说过,当元素存入集合时,集合会将元素转换为Object类型存储,当取出时也是按照Object取出的,所以用get方法取出时,我们会进行强制类型转换,并且通 ...

  9. Java中list<Object>集合去重实例

    一:Java中list去重的方法很多,下面说一下其中一种方法:把list里的对象遍历一遍,用list.contain(),如果不存在就放入到另外一个list集合中: 二:实例 这里需要注意的是:使用c ...

  10. java中数组以及集合

    java中数组: 数组在Java里是一种特殊类型,有别于普通的“类的实例”的对象.但实际数组也是一种对象类型,int[]a = new int[5]  a是在java栈中分配的引用变量,类型是int[ ...

随机推荐

  1. 搭配 VS Code Remote 远程开发扩展在 WSL 下开发

    ❗ 注意:远程开发扩展需要在 Visual Studio Code Insiders 上使用. Visual Studio Code Remote - WSL 扩展允许你直接借助 VS Code 令  ...

  2. 迎接仪式 dp

    题目描述 LHX教主要来X市指导OI学习工作了.为了迎接教主,在一条道路旁,一群Orz教主er穿着文化衫站在道路两旁迎接教主,每件文化衫上都印着大字.一旁的Orzer依次摆出“欢迎欢迎欢迎欢迎……”的 ...

  3. [BJWC2008]雷涛的小猫 dp

    题目背景 原最大整数参见P1012 题目描述 雷涛同学非常的有爱心,在他的宿舍里,养着一只因为受伤被救助的小猫(当然,这样的行为是违反学生宿舍管理条例的).在他的照顾下,小猫很快恢复了健康,并且愈发的 ...

  4. 最长双回文串(模板+dp)

    题目链接 #include <bits/stdc++.h> using namespace std; typedef long long ll; inline ll read(){ , f ...

  5. EcmaScript源码

    /** @type {Number} @const */ NaN = 0; /** @type {Number} */ Infinity = 0; undefined = 0; /** @param ...

  6. emmet高级技巧

    编写好HTML和CSS代码时,我们也需要修改或添加一些内容,Emmet提供了很多非常独特的工具,可以大大提高编辑体验,下面我们挑选几个常用的功能来介绍. 萨龙龙发现在sublime text中安装的E ...

  7. 总结工作中用到的ES6语法,方便工作中查看,也总结一下经验

    1.模板字符串: 表现形式:${} 举例子: import axios from 'axios'; let base = 'https://www.baidu.com/home/msg/data/pe ...

  8. 【SQL Server 优化性能的几个方面】(转)

    转自:http://blog.csdn.net/feixianxxx/article/details/5524819     SQL Server 优化性能的几个方面 (一).数据库的设计 可以参看最 ...

  9. ssl加密

    握手前使用非对称加密, 握手后使用对称加密 前期握手就是用来协商对称加密算法的

  10. 设计模式——单例模式(Singleton)

    保证一个类仅有一个实例,并提供一个访问它的全局访问点.——DP UML类图 模式说明 个人认为单例模式是所有设计模式中最为简单的一个模式,因为实现这个模式仅需一个类,而不像其他模式需要若干个类.这个模 ...