集合扩展案例练习以及HashTable和HashMap的区别?

20 篇文章 2 订阅
package com.hrf.demo;

import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;
import java.util.Properties;
import java.util.Vector;

public class LeaveClassTest {

	public static void main(String[] args) {
		/*
		遗留类		缺点						取代类
		Vector 		方法都是同步的影响性能 		ArrayList和LinkedList
		HashTable 	方法都是同步的影响性能 		HashMap
		Stact 		因为继承Vector,同样影响性能 	LinkedList
		Enuneration 只能与历史集合使用 			Iterator
		
		HashTable和HashMap的区别?
		1.HashTable多线程的,效率低;HashMap单线程的,效率高.
		2.null可以作为HashMap的key使用,但是不能作为HashTable的key使用.
		*/
//		1.HashMap
		Map<String, Integer> map = new  HashMap<String, Integer>();
		map.put(null, null);
		map.put("a", 2);
		map.put(null, 1);
		System.out.println(map);
		System.out.println(map.get(null));
//		2.HashTable
//		Map<String, Integer> map2 = new  Hashtable<>();
//		map.put(null, 1);//java.lang.NullPointerException会报错
//		map.put("a", 2);
//		System.out.println(map2);
//		System.out.println(map2.get(null));
		System.out.println("----------------------");
//		--------------------------
//		属性类Properties
		Properties properties = new Properties();
//		添加
		properties.setProperty("name", "张三");
		properties.setProperty("sex", "男");
//		获取
		System.out.println("返回的是Object类型\t" + properties.get("name"));
		System.out.println("返回的是String类型\t" + properties.getProperty("sex"));
		System.out.println("---------------------");
//		----------------------------
		Map<Integer,String> map3 = new  HashMap<>();
//		添加键值对
		map3.put(1, "张三");
		map3.put(2, "李四");
		map3.put(3, "王五");
//		按照key获取value
		System.out.println(map3.get(3));
//		按照key移除value
		System.out.println(map3.remove(2));
		System.out.println(map3);
//		清空
		map3.clear();
		System.out.println(map3);	
	}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值