java桑硅谷 day23 晨考
1、ArrayList的初始化长度为多少?
简单回答:10
详细回答:
JDK1.6:初始化为10
JDK1.7:初始化为一个空数组 EMPTY_ELEMENTDATA
JDK1.8:初始化为一个空数组 DEFAULTCAPACITY_EMPTY_ELEMENTDATA
2、HashMap的内部存储结构是什么?
JDK1.8之前:数组+链表
JDK1.8之后:数组+链表/红黑树
3、HashMap的映射关系(键值对)类型是什么?
简单回答:Map.Entry类型
详细回答:
JDK1.8之前:HashMap.Entry implements Map.Entry
JDK1.8之后:HashMap.Node(链表),HashMap.TreeNode(红黑树) 它俩都实现了Map.Entry接口
4、HashMap的几个常量值是多少,什么意思?
DEFAULT_INITIAL_CAPACITY:默认的初始化容量 16
DEFAULT_LOAD_FACTOR:默认加载因子 0.75
问?这个加载因子不用默认的0.75,如果自己设置为0.9和0.1什么区别?
加载因子越大,数组越满才能扩容,那么就可能会出现链表或树的结点比较多
加载因子越小,数组扩容会很频繁
TREEIFY_THRESHOLD:从链表到树化的结点个数阈值,默认8
UNTREEIFY_THRESHOLD:从树到链表的阈值,默认6
MIN_TREEIFY_CAPACITY:从链表到树化的数组长度的最小容量,默认64
几个变量是存储什么的?
threshold:阈值,控制扩容的,当size >= threshold && table[index]!=null 就会扩容,threshold = table.length * loadFactor
table:数组名
modCount:当前集合被修改的次数
loadFactor:加载因子,默认取DEFAULT_LOAD_FACTOR:默认加载因子,0.75
5、手动编写代码,如果是使用泛型类请正确指定泛型
(1)声明省份类型Province,有省份id,名称name,省略构造器,get/set,toString,其他方法不能省略
public class Province implements Comparable<Province>{
private int pid;
private String name;
public int compareTo(Province p){
return this.pid - p.pid;
}
}
(2)声明城市类型City,有城市id,名称name,省略构造器,get/set,toString
public class City {
private int cid;
private String name;
public int getCid() {
return cid;
}
(3)把如下信息存储到TreeMap中,按照省份id排序
1:北京市
1:北京市
2:海南省
2:海口市
3:三亚市
3:天津市
4:天津市
import java.util.ArrayList;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;
public class TestTreeMap {
public static void main(String[] args) {
TreeMap<Province, ArrayList<City>> map = new TreeMap<>();
ArrayList<City> bj = new ArrayList<>();
bj.add(new City(1,"北京市"));
ArrayList<City> tj = new ArrayList<>();
tj.add(new City(4,"天津市"));
ArrayList<City> hn = new ArrayList<>();
hn.add(new City(2,"海口市"));
hn.add(new City(3,"三亚市"));
map.put(new Province(1,"北京市"),bj);
map.put(new Province(2,"海南省"),hn);
map.put(new Province(3,"天津市"),tj);
Set<Entry<Province, ArrayList<City>>> entrySet=map.entrySet();
for (Entry<Province, ArrayList<City>> entry : entrySet) {
System.out.println(entry.getKey());
ArrayList<City> value = entry.getValue();
for (City city : value) {
System.out.println("\t"+city);
}
}
}
}
注意:需要把省略的构造器toString getset设置完成。
java桑硅谷 day23 晨考相关推荐
- Java尚硅谷核心知识
Java尚硅谷核心知识 一.Java基础部分 1.1 Java语言的主要特性 1.2 Java程序运行机制及运行过程 1.2.1Java两种核心机制 1.3Java语言的环境搭建 1.3.1 为什么要 ...
- 《阿里巴巴编码规范(JAVA)》学习认证考后感
image.png <阿里巴巴 Java 开发手册>是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断完善,系统化地整理成册,回馈给广大开发者. 本手册的 ...
- 软考程序员Java答题速成_软考程序员考试试题解答方法与技巧
如果说程序员考试解上午题无技巧可言的话,那么解下午题就是70%的实力加30%的方法与技巧,若运用到极致的话,会是"四两拨千斤".下面就来看一下程序员下午题解题步骤和解题技巧,以供考 ...
- 计算机考研要考java吗_计算机二级考JAVA还是C?
前几天有学生问我,考计算机二级(全国计算机等级考试,National Computer Rank Examination,简称NCRE),是考C还是考JAVA.原因是他们上学期学习了C语言,这学期开始 ...
- 软考程序员Java答题速成_软考程序员考试下午题解题技巧
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 如果说程序员考试解上午题无技巧可言的话,那么解下午题就是70%的实力加30%的方法与技巧,若运用到极致的话,会是"四两拨千斤".很多考 ...
- 国内软考有用到JAVA的吗_软考一般有几个科目?含金量如何?
众所周知,软考是计算机行业内比较受欢迎的考试,软考分为初级.中级.和高级,不同级别的软考,对考试和考试科目也都是不同的,因此对于软考一般有几个科目?其实软考的范围比较广,报考数据结构,算法,多媒体,j ...
- Java实训-9月月考
单选题 1.下列程序运行后,输出结果是( ) public class Point { private int x, y;Point (int x, int y) {this.x = x;this.y ...
- java模拟器吧_无忧考吧计算机二级JAVA模拟器
无忧考吧二级JAVA超级模拟软件是一款可以帮助您学习Java的软件,您可以在软件上练习Java实际操作,让您快速了解Java开发的方案,从而让您在考试的时候轻松解决试卷上出现的题目. 软件功能 详尽解 ...
- Java项目硅谷课堂学习笔记-P10-后台系统公众号部分
P10-后台系统公众号部分 1.公众号菜单管理 1.1创建模块service_wechat 1.2引入依赖 1.3生成菜单相关代码 1.4创建启动类和配置文件 1.4.1启动类 1.4.2配置文件 1 ...
最新文章
- 怎么做 空间杜宾模型_企业营销怎么做?深度解析STP模型及案例,一步成高手...
- 运动检测(前景检测)之(二)混合高斯模型GMM
- Mybatis-Helloword
- 我国物流业的国际比较及发展措施 (1)
- 剑指offer之26-30题解
- 极速写作2017彻底卸载_如何将 Flash 从 Mac 和 Windows 系统中彻底卸载?
- 利用windows 2003 实现×××服务器的组建与架构(一) 移动用户到站点之间的×××...
- mysql指南_MySQL入门指南
- java第四次上机作业
- Spring Boot application.yml文件语法
- 查看总耗时_讲真,我为什么劝你别总加班。
- 0可用,0已用 U盘问题 重解~
- python制作自动交易软件-Python语言之一位程序员写了一个自动化交易程序,躺着玩,两年就挣了两百万!...
- Android下实现Google街景
- 用计算机能算重量加权平均长度吗,利用计算器求平均数检测试题与*
- 阿里云服务器迁移内容
- 360wifi驱动 linux ap,360wifi驱动
- 简明现代魔法 php,给PHP初学者的一些建议
- matlab 关键路径函数,用线性规划建模(确定参数)关键路径法
- 从视频中提取光流 UCF-101
热门文章
- Java获取指定Redis的key_Redis获取某个前缀的key脚本实例
- vscode如何连接新设备_新设备进口报关公司如何选择
- shell编程实例(三)
- 网站互点工具_如何利用关键词互点互刷提升网站关键词排名?
- 【Pygame小游戏】史上最全:《唐诗三百首》合集,每一首都是精华,果断收藏~(学诗+锻炼记忆+Python诗句填空小程序上线啦)
- matlab画西瓜程序,科学吃西瓜
- 渗透测试服务 甲方公司OA网站系统漏洞测试
- 重磅!ChatGPT 网页版来啦!响应速度超快!
- PR规则下的网络渗流模型
- win10切换到纯英文输入法