【无标题】

第十二章
容器类
容器接口Collection
Set(集合接口)和List(列表接口)都继承了Collection接口。
List接口中包含的是元素有序,可重复的集合;Set接口中包含的是元素无序,不可重复的集合。
实现列表接口List的类主要有两个:LinkedList(链表类)和ArrayList(数组列表类)。
LinkedList链表类:向链表中任意位置插入或删除元素是不需要移动其他元素的。
ArrayList数组列表类:向其中添加元素时,容量会自动增大,但不能自动缩小,但可以用trimToSize方法将数组的容量减小到数组列表的大小。
利用LinkedList类构造一个先进后出的堆栈。

import java.util.LinkedList;
import java.util.Scanner;
class StringStack{
private LinkedList id=new LinkedList();//创建LinkedList对象
public void push(String name){//将输入的数据入栈
id.push(name);//将name添加到链表的表头
}
public String pop(){//获取并删除栈顶数据
return id.removeFirst();//获取并移除堆栈中第一个元素
}
public boolean isEmpty(){//判断堆栈是否为空
return id.isEmpty();
}
}
public class Test{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
StringStack stack=new StringStack();
System.out.println(“请输入数据 输入(quit)代表结束”);
while(true){
String input=sc.next();
if(input.equals(“quit”))
break;
stack.push(input);//入栈
}
System.out.println(“先进后出的顺序:”);
while (!stack.isEmpty())
System.out.print(stack.pop()+" ");//出栈
}
}
最先放入栈中的元素在栈底(Bottom),最后放入栈中的元素在栈顶(Top),而删除元素时最后放入的元素先删除。
创建数组对象并添加元素

import java.util.*;
public class Teat{
public static void main(String[] args) {
ArrayList a1=new ArrayList();
for (int i = 1; i <5 ; i++) {
a1.add(i);//向数组中添加元素
}
System.out.println(“数组的原始数据:”+a1);
ListIterator listIter=a1.listIterator();
listIter.add(0);//在序号为0的元素前添加一个元素0
System.out.println(“添加数据后数组列表”+a1);
}
}
集合接口Set
HashSet(哈希集合类)和TreeSet(树集合类)都继承了Set接口。HashSet在元素的储存位置和元素的值之间创立一个对应关系,使每个元素与唯一储存位置对应。在比较两个加入哈希集合的元素是否相同时,先比较HashCode()方法的返回值是否相同,若相同则再使用equals方法比较二者的内存地址是否相同,若也相同,则二者视为相同元素。
TreeSet与HashSet相似,但TreeSet额外添加一个步骤,使集合中的元素有序。

映射接口Map
HashMap(哈希映射)和TreeMap(树映射)是基于Map接口的实现类。
HashMap通过哈希码对内部映射关系快速查找,因此添加删除映射关系效率极高,且允许使用null值和null键。
TreeMap中的映射关系根据键对象按照一定的顺序排列,因此不允许键对象为null。

害呀😔知识点学习完,并不代表会写代码,对于要完成学生信息管理系统,我先是看不懂题目,不知道它到底要运用哪些知识点?经过查询了之后,可算是把题目给搞清楚,现在就就能先睡觉了,睡醒后继续敲代码💪!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值