JDK类集框架实验(ArrayList,LinkedList,TreeSet,HashSet,TreeMap,HashMap)
ArrayList
import java.util.ArrayList;
public class C8_3 { public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<Integer> nl = new ArrayList<Integer>();
nl.add((Integer) 1);
nl.add((Integer) 2);
nl.add((Integer) 3);
System.out.println("输出集合的所有元素" + nl);
System.out.println("输出下标为2的元素: " + nl.get(2));
nl.add(1, (Integer) 4);// 下标1的位置插入一个元素
System.out.println("元素下标1的位置插入4后,输出所有元素" + nl);
Integer b = (Integer) 1;
int n = nl.indexOf(b);// 查找指定元素的下标
nl.remove(n);// 删除指定下标的元素
System.out.println("n=" + n + " 删除n元素后输出集合中所有元素");
for(Integer i : nl){
System.out.print(i + " , ");
} System.out.println();
} }
LinkedList
import java.util.LinkedList; public class C8_5 { public static void main(String[] args) {
// TODO Auto-generated method stub LinkedList queue = new LinkedList(); queue.offer("a1");// 入队列操作 queue.add()
queue.offer("a2");
queue.offer("a3"); System.out.println(queue);
System.out.println(queue.poll());// 出队列操作 queue.pop()
System.out.println(queue);
System.out.println(queue.peek()); // 取队列头元素操作,并没有把元素踢掉
System.out.println(queue);
System.out.println(queue.poll()); // 出队列操作
System.out.println(queue.isEmpty()); // 判断队列空操作 } }
TreeSet
import java.util.Iterator;
import java.util.TreeSet; public class TestTreeSet { public static void main(String[] args) {
// TODO Auto-generated method stub TreeSet ts1 = new TreeSet(); ts1.add(20);
ts1.add(20);
ts1.add(50);
ts1.add(30);
ts1.add(100);
ts1.add(10);
ts1.add(70);
ts1.add(60);
System.out.println("树里面的元素"+ts1);
System.out.println(ts1.isEmpty());
System.out.println(ts1.size()+" ");
System.out.println(ts1.contains(30));
ts1.remove(30);
System.out.println(ts1.contains(30));
System.out.println(ts1.size()); // 迭代器的使用方法
Iterator it = ts1.iterator();
while(it.hasNext())
System.out.println(it.next() + " ");
System.out.println(); Object[] data = ts1.toArray();
for(int i=0; i<data.length; i++)
System.out.print(data[i]+" ");
System.out.println();
} }
HashSet
import java.util.*; public class TestHashSet { public static void main(String[] args) {
// TODO Auto-generated method stub
HashSet ts1 = new HashSet();
ts1.add(20);
ts1.add(50);
ts1.add(30);
ts1.add(100);
ts1.add(10);
ts1.add(70);
ts1.add(60);
ts1.add(30);
System.out.println(ts1);
System.out.println(ts1.isEmpty());
System.out.println(ts1.size());
System.out.println(ts1.contains(30));
ts1.remove(30);
System.out.println(ts1.contains(30));
System.out.println(ts1.size()); // 迭代器的使用方法
Iterator it = ts1.iterator();
while (it.hasNext())
System.out.print(it.next() + " ");
System.out.println(); // toArray方法的使用
Object[] data = ts1.toArray();
for (int i = 0; i < data.length; i++)
System.out.print(data[i] + " ");
System.out.println(); } }
TreeMap
import java.util.*; public class TestTreeMap { public static void main(String[] args) {
// TODO Auto-generated method stub TreeMap register = new TreeMap();
register.put("zhangshan","jingsp");
register.put("lishi","1996-8");
register.put("wangwu","960515");
register.put("zhaoliu","overS"); System.out.println("-------------------");
System.out.println("entryset =");
Set s = register.entrySet();
Iterator it = s.iterator(); while(it.hasNext())
{
System.out.println(it.next());
} System.out.println("-------------------");
System.out.println("key=\t value=");
Set s0 = register.entrySet();
Iterator it0 = s0.iterator();
while(it0.hasNext())
{
Map.Entry map = (Map.Entry)it0.next();
System.out.println("key:"+map.getKey()+"\tvalue:"+map.getValue());
} System.out.println("-------------------");
System.out.println("keyset ====");
Set s1 = register.keySet();
Iterator it1 = s1.iterator();
while(it1.hasNext())
System.out.println(it1.next()); System.out.println("-------------------");
System.out.println("valueset ====");
Collection s2=register.values();
Iterator it2=s2.iterator();
while(it2.hasNext())
System.out.println(it2.next()); System.out.println("-------------------"); System.out.println(register.size());
System.out.println(register.get("lishi"));
System.out.println(register.isEmpty());
register.put("chengjiu", "arg1");
System.out.println(register.size());
System.out.println(register.remove("chengjiu"));
System.out.println(register.size());
System.out.println(register.containsKey("chengjiu")); System.out.println(register.containsValue("960515")); } }
Map接口内部定义了一个接口Entry
interface Entry{
Object getKey();
Object getValue();
Object setValue();
boolean equals(Object value);
int hashCode();
}
HashMap
import java.util.*;
public class TestHashMap { public static void main(String[] args) {
// TODO Auto-generated method stub
HashMap register = new HashMap();
register.put("zhangshan", "jingsp");
register.put("lishi", "1996-8");
register.put("wangwu", "960515");
register.put("zhaoliu", "overS"); System.out.println(register); System.out.println("-------------------");
System.out.println("entryset =");
Set s = register.entrySet(); System.out.println("hashCode " + s.hashCode()); Iterator it = s.iterator();
while(it.hasNext())
System.out.println(it.next()); System.out.println("-------------------");
System.out.println("key=\t value=");
Set s0 = register.entrySet();
Iterator it0 = s.iterator();
while (it0.hasNext()) {
Map.Entry map = (Map.Entry) it0.next();
System.out.println("key:" + map.getKey() + "\tvalue:"
+ map.getValue());
} System.out.println("-------------------");
System.out.println("keyset ====");
Set s1 = register.keySet();
Iterator it1 = s1.iterator();
while (it1.hasNext())
System.out.println(it1.next()); System.out.println("-------------------");
System.out.println("valueset ====");
Collection s2 = register.values();
Iterator it2 = s2.iterator();
while (it2.hasNext())
System.out.println(it2.next()); } }
{lishi=1996-8, zhangshan=jingsp, zhaoliu=overS, wangwu=960515}
-------------------
entryset =
hashCode 48127692
lishi=1996-8
zhangshan=jingsp
zhaoliu=overS
wangwu=960515
-------------------
key= value=
key:lishi value:1996-8
key:zhangshan value:jingsp
key:zhaoliu value:overS
key:wangwu value:960515
-------------------
keyset ====
lishi
zhangshan
zhaoliu
wangwu
-------------------
valueset ====
1996-8
jingsp
overS
960515
JDK类集框架实验(ArrayList,LinkedList,TreeSet,HashSet,TreeMap,HashMap)的更多相关文章
- javase基础笔记4——异常/单例和类集框架
继承 extends final关键 多态 是在继承的基础上 接口 interface 异常 exception 包的访问可控制权限 private default protect public 异常 ...
- 浅谈java类集框架和数据结构(2)
继续上一篇浅谈java类集框架和数据结构(1)的内容 上一篇博文简介了java类集框架几大常见集合框架,这一篇博文主要分析一些接口特性以及性能优化. 一:List接口 List是最常见的数据结构了,主 ...
- Java类集框架详细汇总-底层分析
前言: Java的类集框架比较多,也十分重要,在这里给出图解,可以理解为相应的继承关系,也可以当作重要知识点回顾: Collection集合接口 继承自:Iterable public interfa ...
- 浅谈java类集框架和数据结构(1)
在另外一篇博客我简单介绍了java类集框架相关代码和理论. 这一篇博客我主要分析一下各个类集框架的原理以及源码分析. 一:先谈谈LinkedList 这是LinkedList源码的开头,我们能看到几点 ...
- java:类集框架
类集框架:jdk提供的一系列类和接口,位于java.util包当中,主要用于存储和管理对象,主要分为三大类:集合.列表和映射. 集合Set:用于存储一系列对象的集合.无序.不允许重复元素. 列表Lis ...
- 专题笔记--Java 类集框架
Java 类集框架 1. Java类集框架产生的原因 在基础的应用中,我们可以通过数组来保存一组对象或者基本数据,但数组的大小是不可更改的,因此出于灵活性的考虑和对空间价值的担忧,我们可以使用链表来实 ...
- 第41节:Java当中的类集框架
Java当中的类集框架 类集框架,那么什么是类集框架,集合的种类有哪些,类集框架的基础结构. 类集框架是一组类和接口的集合,位于java.util包当中,是用来用户存储和管理对象的,在这个类集合框架中 ...
- Java——集合框架之ArrayList,LinkedList,迭代器Iterator
概述--集合框架 Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类).所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection ...
- java中的类集框架
1.什么是类集框架 1.是一组类和接口 2.位于java.util包当中 3.主要用于用户存储和管理对象 4.主要分为三大类——集合.列表和映射 2.类集框架图 虚线框的表示接口,实线框的表示实现类 ...
随机推荐
- 07 Object类,Scanner,Arrays类,String类,StringBuffer类,包装类
Object类的概述:* A:Object类概述 * 类层次结构的根类 * 所有类都直接或者间接的继承自该类* B:构造方法 * public Object() * 子类的构造 ...
- centos7配置openldap服务器
参考链接 https://www.cnblogs.com/bigbrotherer/p/7251372.html 上面这篇参考文件在最后登录是有问题的 vi /etc/openldap/sldap.c ...
- 基于lfslivecd-x86-6.3-r2145安装vnc和qemu
文章目录 把lfslivecd复制到硬盘上使用 编译安装vnc 前后下载了多个软件包进行编译安装 编译VNC 启动VNC 编译安装qemu 启动VNC客户端并连接虚拟机的vncviewer 把lfsl ...
- debezium mongodb 集成测试
debezium 是一个方便的cdc connector 可以帮助我们解决好多数据实时变更处理.数据分析.微服务的数据通信 从上次跑简单demo到现在,这个工具是有好多的变更,添加了好多方便的功能,支 ...
- GBDT(Gradient Boosting Decision Tree) 没有实现仅仅有原理
阿弥陀佛.好久没写文章,实在是受不了了.特来填坑,近期实习了(ting)解(shuo)到(le)非常多工业界经常使用的算法.诸如GBDT,CRF,topic model的一些算 ...
- MongoDB journal与oplog解惑
journal journal 是 MongoDB 存储引擎层的概念,目前 MongoDB主要支持 mmapv1.wiredtiger.mongorocks 等存储引擎,都支持配置journal. M ...
- Jmeter性能监测及安装插件(推荐)
本文部分理论转自Jmeter官网:https://jmeter-plugins.org/wiki/PerfMon/ ,并结合个人实践编写 一.介绍 在负载测试期间,了解加载服务器的运行状况很重要.如 ...
- cksum命令详解
Linux cksum命令 Linux cksum命令用于检查文件的CRC是否正确.确保文件从一个系统传输到另一个系统的过程中不被损坏. CRC是一种排错检查方式,该校验法的标准由CCITT所指定,至 ...
- Hadoop "Cannot create directory .Name node is in safe mode."解决方案
转载自:http://www.waitig.com/hadoop-name-node-is-in-safe-mode.html 在使用Hadoop建立文件的时候,出现“Cannot create di ...
- mybatis异常:Caused by: java.lang.IllegalArgumentException: Result Maps collection already contains value for。。。。。。
框架环境:ssm 昨天下午技术经理更新了下表结构,多加了一个字段. 之后我根据新的mapper.xml文件写了增删改查的操作.重新启动之后不是这个错就是那个错,一大堆错误,头疼. 像类似于NoSuch ...