Java基础系列 - JAVA集合ArrayList,Vector,HashMap,HashTable等使用
package com.test4; import java.util.*; /**
* JAVA集合ArrayList,Vector,HashMap,HashTable等使用
*/
public class test4 {
public static void main(String[] args) {
//ArrayList异步,线程不安全,性能高 Vector同步,线程安全,性能低
//定义个ArrayList对象
ArrayList arrayList = new ArrayList();
//显示大小
System.out.println(arrayList.size());
//添加雇员
Employer employer1 = new Employer(1000, "张三", 20);
Employer employer2 = new Employer(1001, "李四", 25);
Employer employer3 = new Employer(1002, "王五", 30);
arrayList.add(employer1);
arrayList.add(employer2);
arrayList.add(employer3); System.out.println("---------foreach循环ArrayList-------------------");
//iter + tab键快捷键生成foreach代码块
for (Object item : arrayList) {
System.out.println("雇员信息:" + item.toString());
} System.out.println("---------for循环ArrayList-------------------");
//fori 快速生成for代码块
for (int i = 0; i < arrayList.size(); i++) {
System.out.println("雇员信息:" + arrayList.get(i).toString());
} System.out.println("---------获取一个雇员信息-------------------");
//获取一个对象
Employer employer = (Employer) arrayList.get(0);
System.out.println("一个雇员信息:" + employer.getName()); System.out.println("---------显示ArrayList大小-------------------");
//显示大小
System.out.println(arrayList.size()); System.out.println("---------HashMap使用-------------------");
/**
* HashMap使用 HashMap异步,线程不安全,性能高 HashTable同步,线程安全,性能低
*/
Map hm = new HashMap();
hm.put("1000", employer1);
hm.put("1001", employer2);
hm.put("1002", employer3);
//使用迭代器
Iterator iter = hm.keySet().iterator();
while (iter.hasNext()) {
//取出Key
String key=iter.next().toString();
//根据Key取出对象
Employer emp= (Employer) hm.get(key);
System.out.println("雇员信息:"+emp.toString());
} /**
* 控制台显示
0
---------foreach循环ArrayList-------------------
雇员信息:Employer{eid=1000, name='张三', age=20}
雇员信息:Employer{eid=1001, name='李四', age=25}
雇员信息:Employer{eid=1002, name='王五', age=30}
---------for循环ArrayList-------------------
雇员信息:Employer{eid=1000, name='张三', age=20}
雇员信息:Employer{eid=1001, name='李四', age=25}
雇员信息:Employer{eid=1002, name='王五', age=30}
---------获取一个雇员信息-------------------
一个雇员信息:张三
---------显示ArrayList大小-------------------
3
---------HashMap使用-------------------
雇员信息:Employer{eid=1002, name='王五', age=30}
雇员信息:Employer{eid=1001, name='李四', age=25}
雇员信息:Employer{eid=1000, name='张三', age=20}
*/
}
} class Employer {
public Employer(int eid, String name, int age) {
this.eid = eid;
this.name = name;
this.age = age;
} private int eid;
private String name;
private int age; public int getEid() {
return eid;
} public void setEid(int eid) {
this.eid = eid;
} 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;
} @Override
public String toString() {
return "Employer{" +
"eid=" + eid +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
Java基础系列 - JAVA集合ArrayList,Vector,HashMap,HashTable等使用的更多相关文章
- Java基础系列7——集合系列(1)框架概述
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 集合框架概述 Jav ...
- Java基础系列--09_集合2
昨天介绍了集合的主要架构体系,今天主要的目的是学习集合的迭代器的遍历和List的特有功能. 迭代器: 概述:由于多种集合的数据结构不同,所以存储方式不同,取出方式也不同.但是他们都是有判断和获 ...
- Java基础系列--08_集合1
---恢复内容开始--- 集合当中有很多都是应用到泛型的技术,所以在讲集合之前,应该先将泛型的概念普及一下. 泛型: (1)泛型是一种类型,但是这种类型是在编译或者调用方法时才确定. (2 ...
- Java入门系列之集合ArrayList源码分析(七)
前言 上一节我们通过排队类实现了类似ArrayList基本功能,当然还有很多欠缺考虑,只是为了我们学习集合而准备来着,本节我们来看看ArrayList源码中对于常用操作方法是如何进行的,请往下看. A ...
- Java 集合系列14之 Map总结(HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)
概要 学完了Map的全部内容,我们再回头开开Map的框架图. 本章内容包括:第1部分 Map概括第2部分 HashMap和Hashtable异同第3部分 HashMap和WeakHashMap异同 转 ...
- Java基础系列-ArrayList
原创文章,转载请标注出处:<Java基础系列-ArrayList> 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...
- Java基础系列--HashMap(JDK1.8)
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是 ...
- Java基础系列-Collector和Collectors
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10748925.html 一.概述 Collector是专门用来作为Stream的coll ...
- Java 基础系列合集
Java基础知识你知道多少? Java特性 Java三大特性:封装,继承,多态 Java 抽象类与接口 Java 浅拷贝和深拷贝 Java static和final Java 内部类.静态内部类.匿名 ...
随机推荐
- 依赖: libcheese-gtk23 (>= 3.4.0)
unity-control-center : 依赖: libcheese-gtk23 (>= 3.4.0) 但是它将不会被安装 依赖: libch ...
- 【转载】Request对象的作用以及常见属性
Request对象是Asp.Net应用程序中非常重要的一个内置对象,其作用主要用于服务器端获取客户端提交过来的相应信息,比较常用的有使用Requset对象获取用户提交的html表单信息,Request ...
- redis过期事件回调函数,与有序集合
https://cloud.tencent.com/developer/article/1347437 python中的Redis键空间通知(过期回调) set notify-keyspace-ev ...
- 2-3 查找树及其Java实现
2-3 查找树 定义(来源:wiki) 查找 插入 2-3 查找树 定义(来源:wiki) 2–3树是一种树型数据结构,内部节点(存在子节点的节点)要么有2个孩子和1个数据元素,要么有3个孩子和2个数 ...
- Django session默认配置
配置 settings.py SESSION_ENGINE = 'django.contrib.sessions.backends.db' # 引擎(默认) SESSI ...
- C++——虚函数表解析
转自:https://blog.csdn.net/haoel/article/details/1948051 前言 C++中的虚函数的作用主要是实现了多态的机制.关于多态,简而言之就是用父类型指针指 ...
- Linux——发行版
主流发行版 1. Red Hat Linux Red Hat 公司一直是Linux 乃至开源世界的领导者.其有两个不同的发行版本: 一个商用版,称为Red Hat Enterprise Linux,专 ...
- 关于zsh-autosuggestions插件导致粘贴内容很慢的问题
zsh开启autosuggestions 插件的时候,在终端中粘贴大量的内容的时候,会粘贴的很慢,基本上是一个字符一个字符的粘贴的. 解决方案 在.zshrc文件中配置以下内容: # This spe ...
- k8s的etcd
etcd是一个高可用的分布式键值(key-value)数据库.etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现. etcd是一个服务发现系统,具备以下的特点: 简单:安装配置简单, ...
- vue tslint报错: Calls to 'console.log' are not allowed
使用Vue CLI 3 的 vue create 创建vue+ts 项目,使用默认配置, 控制台报警告Calls to 'console.log' are not allowed,解决: 在tslin ...