java集合问题(主要是8 9 10不会)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java集合问题(主要是8 9 10不会)相关的知识,希望对你有一定的参考价值。

/**
* 练习:
* 1. 生成一个有10个0~99随机数的
* 可重复集list
* 2.用迭代器遍历该集合,大于等于70的
* 元素删除
* 3.用正常的for循环,结合size方法遍历输出
* 新集合list
* 4.替换下标为3的元素为0,把被替换的元素输出,
* 并且输出替换后的list
* 5.截取list下标2到4的子集合slist
* 6.获取list的第1个元素和最后一个元素,
* 把这两个元素插入到子集合slist的前两个位置。
* 7.输出判断list是否包含slist.
* 8.清除slist,并且用增强for循环输出list。
* 9.某中学有若干学生(学生对象放一个list中),每个学生有
* 姓名属性、班级属性 和考试成绩属性。(需要自己创建学生类student)
* 某次考试后,每个学生都获得了一个考试成绩。遍历list集合,并且把
* 学生对象的属性打印出来。
* 10.设计一个方法,判断两个集合是否有交集,有则输出其交集,没有则输出没有交集
*
*/

8.清空slit,slist.clear();
输出list
for(int l : list)System.out.println(l);
9.这个内容太多了,手机手打太慢说下思路。把学生放到list前都需要实例化一下学生实体类(new Student)。或者一个学生一个对象,学生多时明显不适用。学生赋值成绩这个不知道你是实例化学生时赋值的还是后期。如果后期可以遍历list时获取名称。然后赋值。遍历打印参考8。
10.你这里都用list就直接用list了
public void retainPrint(List<Integer> l1, List<Integer> l2)
l1.retainAll(l2);
if(a.isEmpty())
System.out.println("没有交集");
else
for(int l : l1)
System.out.println(l);


追问

直接用slits.clear();会报错 我试过了…… 不知道原因是什么

把第七题删了clear方法才可以用 那第七题怎么改……

参考技术A 10、
public class Test
public static void main(String[] args)
//你自己假设几个集合
List<String> list1=new ArrayList<>();
List<String> list2=new ArrayList<>();
List<String> list3=new ArrayList<>();//用来储存交集的集合
list1.add("1");
list1.add("2");
list1.add("3");
list2.add("1");
list2.add("2");
//判断是否有相同的元素
for(int i=0;i<list1.size();i++)
for(int j=0;i<list2.size();j++)
if(list.get(i).equals(list2.get(j)))
list3.add(list1.get(i));



if(list3.size()==0)
System.out.println("没有交集");//交集集合为空,输出没有交集
else
//交集集合不为空,遍历输出交集
for(int i=0;i<list3.size();i++)
System.out.println(list3.get(i));//输出交集元素




//记得点赞

以上是关于java集合问题(主要是8 9 10不会)的主要内容,如果未能解决你的问题,请参考以下文章

源码阅读(10):Java中主要的QueueDeque结构——ArrayDeque集合(上)

java遍历list集合问题

JAVA同集合怎样比较?

java -version 告诉我 8 但 jdk 是 1.7 - OSX 10.9.x

java_Map集合

java集合之Map