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 内部类.静态内部类.匿名 ...
随机推荐
- U盘安装Ubuntu14.04&配置远程win10远程连接
1.U盘安装Ubuntu:https://blog.csdn.net/baigoocn/article/details/26561473 2.win10远程访问Ubuntu系统:https://www ...
- java SE,EE,ME区别
Java SE(Java Platform,Standard Edition):java平台标准版: Java EE(Java Platform.Enterprise Edition):java平台企 ...
- VBA子程序(十六)
子程序(Sub Procedures,也叫子过程)与函数类似,但有一些差异. 子过程不需要有返回一个值,而函数可能会或可能不会有返回一个值. 子程序可以不用call关键字来调用. 子程序总是包含在Su ...
- 使用Django时需要注意的八个要点
1.在settings.py中使用os. path.dirname() 常用代码如下: # settings.py import os PROJECT_DIR = os.path.dirname(__ ...
- PX4/Pixhawk uORB
PX4/Pixhawk的软件体系结构主要被分为四个层次 应用程序的API:这个接口提供给应用程序开发人员,此API旨在尽可能的精简.扁平及隐藏其复杂性 应用程序框架:这是为操作基础飞行控制的默认程序集 ...
- 网络基础 InetAddress
IP地址是IP使用的32位(IPv4)或者128位(IPv6)位无符号数字,它是传输层协议TCP,UDP的基础.InetAddress是Java对IP地址的封装,在java.net中有许多类都使用到了 ...
- code first从入门到伪精通
新入职一家公司,虽然之前也用ef,但是方式不一样,之前用的db,现在用代码先行的code,基于现有公司基本项目框架都是用的code,所以一步登顶,从最实战的角度去操作code,心颤的很,废话不多说,开 ...
- 实现数字转换RMB大写~
实现的功能是将数字“673”转换成“陆佰柒拾叁” “3681”转换成“叁仟陆佰捌拾壹” “8007”转换成“捌仟零柒” 主要使用了数组和循环来实现 代码雏形 package com.te ...
- vue 打印html
1.https://github.com/xyl66/vuePlugs_printjs从这个路径下载print.js.放到你的代码中 2.我是放到我本地一个js文件中. 3.引入当前文件 //打印插件 ...
- sed初级教程
简介 sed是作为特殊目的的编辑器而创建的,用于专门执行脚本:与ed不同,它不能交互地使用.sed面向字符流.默认情况下,到sed的所有输入都会经过相应的处理,并转为标 准输出.输入文件本身不发生改变 ...