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等使用的更多相关文章

  1. Java基础系列7——集合系列(1)框架概述

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 集合框架概述 Jav ...

  2. Java基础系列--09_集合2

    昨天介绍了集合的主要架构体系,今天主要的目的是学习集合的迭代器的遍历和List的特有功能. 迭代器:     概述:由于多种集合的数据结构不同,所以存储方式不同,取出方式也不同.但是他们都是有判断和获 ...

  3. Java基础系列--08_集合1

    ---恢复内容开始--- 集合当中有很多都是应用到泛型的技术,所以在讲集合之前,应该先将泛型的概念普及一下. 泛型:    (1)泛型是一种类型,但是这种类型是在编译或者调用方法时才确定.    (2 ...

  4. Java入门系列之集合ArrayList源码分析(七)

    前言 上一节我们通过排队类实现了类似ArrayList基本功能,当然还有很多欠缺考虑,只是为了我们学习集合而准备来着,本节我们来看看ArrayList源码中对于常用操作方法是如何进行的,请往下看. A ...

  5. Java 集合系列14之 Map总结(HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)

    概要 学完了Map的全部内容,我们再回头开开Map的框架图. 本章内容包括:第1部分 Map概括第2部分 HashMap和Hashtable异同第3部分 HashMap和WeakHashMap异同 转 ...

  6. Java基础系列-ArrayList

    原创文章,转载请标注出处:<Java基础系列-ArrayList> 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...

  7. Java基础系列--HashMap(JDK1.8)

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是 ...

  8. Java基础系列-Collector和Collectors

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10748925.html 一.概述 Collector是专门用来作为Stream的coll ...

  9. Java 基础系列合集

    Java基础知识你知道多少? Java特性 Java三大特性:封装,继承,多态 Java 抽象类与接口 Java 浅拷贝和深拷贝 Java static和final Java 内部类.静态内部类.匿名 ...

随机推荐

  1. SQL 多并发 多人取号,防止重复取号SQL 办法

    BEGIN TRAN         SELECT  *  from 表明 WITH(HOLDLOCK)        UPDATE 表名 SET 值=1 WHERE 字段=@carrierNo;   ...

  2. Python——初识网络爬虫(网页爬取)

    网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫 ...

  3. JS如何做爬虫

    JS如何做爬虫,JS做爬虫要靠node节点环境,cheerio(主要是解析下载的网页可以像jquery一样,这是必要的,使用它在npm上查看文档也很简单). Iconv-lite(主要解决下载资源的乱 ...

  4. iOS开发-NSString去掉所有换行及空格

    1.去掉字符串两端的空格及回车 - (NSString *)removeSpaceAndNewline:(NSString *)str{ NSString *temp = [str stringByT ...

  5. 如何在github上提交pr

    如何在github上提交pr 1.fork开源的代码到自己的远程仓库 2.clone自己的仓库到本地电脑 3.与源代码的github仓库建立新的连接 git remote add upstream h ...

  6. VMware网络配置三种网络模式(桥接、NAT、Host-only)

    VMware网络配置三种网络模式(桥接.NAT.Host-only) 一.虚拟安装后三种网络模式显示 当安装好后,的“虚拟网络编辑器”中也存在三种模式,分别对应:桥接-VMnet0.Host-only ...

  7. git命令——git commit

    功能 将暂存区中的更改记录到仓库. 加到staging area里面的文件,是表示已经准备好commit的.所以在commit修改之前,务必确定所有修改文件都是staged的.对于unstaged的文 ...

  8. 【DevOps】在Rancher2中启动Docker-Registry仓库服务

    准备 拥有Rancher2环境,已经在Rancher2配置Kubernetes集群 拥有域名,拥有SSL证书,可以自行在阿里云申请 启动Docker-Registry仓库服务 第一步:进入集群应用 第 ...

  9. Sqlserver2008[索引]

    SQL索引有两种:聚集索引.非聚集索引 目的:提高sqlserver 系统的性能,加快数据的查询速度与减少系统的响应时间 注意点:一个表只能有一个聚集索引,但可以有多个非聚集索引 索引的存储机制: 聚 ...

  10. Vim热键总结

    最近学习linux环境,总结一下Vim的常用热键~~~