当前位置: 首页 > article >正文

面试小结(一)

1、hashmap的底层设计原理以及扩容规则,是否线程安全,如何线程安全。

  • 底层原理:数组 + 链表 + 红黑树。HashMap 的底层实现是一个数组,数组中的每个元素是一个链表或红黑树(JDK 1.8 以后,当链表长度超过一定阈值时,链表会转换成红黑树)。
  • 扩容规则:HashMap 默认的初始容量是 16,扩容时,HashMap 的容量会扩大到原来的两倍。
  • 是否线程安全:HashMap 是非线程安全的。在多线程环境下,如果多个线程同时对 HashMap 进行操作,可能会导致不可预知的行为,比如数据丢失、数据不一致等。
  • 如何实现线程安全:使用 ConcurrentHashMap、使用读写锁、手动同步

2、八大基本数据类型以及长度

  1. byte:字节类型,用于表示有符号的8位整数。范围是 -128 到 127,默认值为 0,占用1个字节。

  2. short:短整型,用于表示有符号的16位整数。范围是 -2^15 到 2^15-1,默认值为 0,占用2个字节。

  3. int:整型,用于表示有符号的32位整数。范围是-2^31到 2^31-1,默认值为 0,占用4个字节。

  4. long:长整型,用于表示有符号的64位整数。范围是 -2^63 到 2^63 ,默认值为 0L,占用8个字节。

  5. float:浮点型,用于表示符合IEEE 754标准的单精度浮点数。占用4个字节。

  6. double:双精度浮点型,用于表示符合IEEE 754标准的双精度浮点数。占用8个字节。

  7. char:字符型,用于表示单个16位Unicode字符。范围是 '\u0000' 到 '\uffff',默认值为 '\u0000',占用2个字节。

  8. boolean:布尔型,用于表示逻辑上的真或假。在JVM内部,boolean类型通常使用int类型来实现,因此占用4个字节,但boolean数组在内存中是以位的形式存储的,每个boolean值占用1位。

3、多线程创建四种方式,以及callable和runnable的区别,如何获取返回值

多线程创建四种方式:继承 Thread 类、实现 Runnable 接口、实现callable接口、使用线程池

callable和runnable的区别:前者有返回值还可以抛异常,后者没有;落地方法不一样,一个是run,一个是call

如何获取 Callable 任务的返回值:Callable 实例包装在 FutureTask 中,然后将 FutureTask 对象作为线程的任务执行。通过调用 FutureTaskget 方法,可以获取 Callable 任务的返回值。


http://www.kler.cn/a/404919.html

相关文章:

  • Electron开发构建工具electron-vite(alex8088)添加VueDevTools(VitePlugin)
  • uniapp页面样式和布局和nvue教程详解
  • 【PyTorch】Pytorch中torch.nn.Conv1d函数详解
  • Arcgis 地图制作
  • Statsmodels之OLS回归
  • iPhone 17 Air看点汇总:薄至6mm 刷新苹果轻薄纪录
  • 解决Electron拖拽窗口点击事件失效问题
  • Python CSV文档自动化操作详解
  • SqlServer 链接一个 SqlServer的链接服务器
  • 自动驾驶系列—探索自动驾驶数据管理的核心技术与平台
  • 微信小程序样式
  • windows 和 linux检查操作系统基本信息
  • 前端开发调试之 PC 端调试学习笔记
  • 【ARM Coresight OpenOCD 系列 6.2 -- Boundary Scan Commands】
  • 药典新篇:Spring Boot助力中药实验管理
  • 使用redis-shake工具进行redis的数据同步
  • 使用IDEA+Maven实现MapReduced的WordCount
  • c# npoi操作excel
  • 【ARM Coresight OpenOCD 系列 5.1 -- OpenOCD 无法识别CPUID 问题: xxx is unrecognized】
  • 嵌入式学习(13)-塔石TAS-LAN-476串口服务器
  • 双因子认证:统一运维平台安全管理策略
  • iOS应用网络安全之HTTPS
  • Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现
  • 使用 npm 安装 Electron 作为开发依赖
  • 常见的 git 提交备注类型
  • 开源 AI 智能名片 2+1 链动模式商城小程序:场景驱动的商业创新与用户价值挖掘