购物网站设计人员推广之家邀请码

web/2025/10/6 23:23:29/文章来源:
购物网站设计人员,推广之家邀请码,免费网站制作教程,最专业的做网站公司有哪些面试 Java 基础八股文十问十答第十八期 作者#xff1a;程序员小白条#xff0c;个人博客 相信看了本文后#xff0c;对你的面试是有一定帮助的#xff01;关注专栏后就能收到持续更新#xff01; ⭐点赞⭐收藏⭐不迷路#xff01;⭐ 1#xff09;多线程场景下如何使用…面试 Java 基础八股文十问十答第十八期 作者程序员小白条个人博客 相信看了本文后对你的面试是有一定帮助的关注专栏后就能收到持续更新 ⭐点赞⭐收藏⭐不迷路⭐ 1多线程场景下如何使用 ArrayList ArrayList 不是线程安全的多个线程同时对其进行读写操作可能会导致数据不一致或其他异常。如果需要在多线程环境中使用 ArrayList可以考虑使用线程安全的集合类如 CopyOnWriteArrayList 或通过使用同步机制来保证线程安全。如果多个线程需要同时读取 ArrayList可以使用不可变的方式来保证线程安全例如将 ArrayList 声明为 final 或使用 Collections.unmodifiableList() 方法返回一个只读的 List。 2为什么 ArrayList 的 elementData 加上 transient 修饰 ArrayList 的 elementData 字段加上 transient 修饰是为了在序列化过程中排除该字段。transient 关键字表示该字段不会被序列化这是因为 ArrayList 的序列化过程是通过对数组元素进行逐个序列化来实现的而不是对整个数组进行序列化。因此为了避免重复序列化数组元素elementData 字段被标记为 transient。 3List 和 Set 的区别 List 是有序的集合可以存储重复的元素可以通过索引访问元素。常见的 List 实现类有 ArrayList 和 LinkedList。Set 是无序的集合不能存储重复的元素不支持通过索引访问元素。常见的 Set 实现类有 HashSet 和 TreeSet。List 允许元素的插入和删除操作可以通过索引来操作元素。Set 不允许重复元素的存在插入重复元素会被忽略。List 的遍历顺序是按照元素的插入顺序而 Set 的遍历顺序是不确定的。List 和 Set 都是接口可以根据具体的需求选择使用哪个接口及其实现类。 总结来说List 适合需要按照顺序存储元素并且需要频繁访问元素的场景而 Set 适合需要去重并且不关心元素的顺序的场景。 4说一下 HashSet 的实现原理 HashSet 是基于 HashMap 实现的底层使用 HashMap 存储元素。HashSet 中的元素被存储在 HashMap 的 key 中而 value 则被设置为一个固定的常量 Object。当向 HashSet 中添加元素时实际上是将元素作为 key 存储到 HashMap 中而 value 则是一个固定的常量 Object。HashSet 利用 HashMap 的 key 的唯一性来保证元素的唯一性。 5HashSet如何检查重复HashSet是如何保证数据不可重复的 HashSet 检查重复的方式是通过 HashMap 的 key 的唯一性来实现的。当向 HashSet 中添加元素时HashSet 会将元素作为 HashMap 的 key 存储而 value 则是一个固定的常量 Object。由于 HashMap 的 key 是唯一的所以当尝试向 HashSet 中添加重复的元素时新元素的 key 会与已存在的 key 相同导致添加操作失败从而保证了 HashSet 中不会存在重复的元素。 6HashSet与HashMap的区别 存储方式HashSet 是基于 HashMap 实现的底层使用 HashMap 存储元素。元素类型HashSet 存储的是不重复的元素而 HashMap 存储的是键值对key-value。元素顺序HashSet 是无序的元素的顺序是不确定的而 HashMap 是无序的元素的顺序是由键的哈希值决定的。元素访问HashSet 不支持通过索引访问元素而 HashMap 可以通过键来访问对应的值。重复元素HashSet 不允许重复元素的存在添加重复元素会被忽略而 HashMap 允许键的重复但不允许值的重复。性能HashSet 的性能略低于 HashMap因为 HashSet 需要通过哈希计算来确定元素的存储位置而 HashMap 需要同时存储键和值。 综上所述HashSet 和 HashMap 在存储方式、元素类型、元素顺序、元素访问、重复元素和性能等方面存在一些区别。选择使用哪个取决于具体的需求和使用场景。 7BlockingQueue是什么 BlockingQueue是Java中的一个接口它表示一个支持线程安全的、有限容量的队列。它定义了一组用于添加、移除、查询元素的方法以及阻塞等待队列操作的方法。BlockingQueue通常用于多线程环境下的生产者-消费者模型其中生产者线程将元素放入队列消费者线程从队列中取出元素进行处理。BlockingQueue提供了一种线程安全的方式来实现线程间的数据传输和同步。 8说一下 HashMap 的实现原理 HashMap 是 Java 中常用的数据结构之一它是基于哈希表实现的。HashMap 通过将键值对存储在一个数组中并使用键的哈希值来确定存储位置从而实现快速的插入、删除和查找操作。HashMap 的实现原理如下 HashMap 使用数组和链表或红黑树的组合来存储键值对。当向 HashMap 中插入键值对时首先根据键的哈希值计算出在数组中的存储位置如果该位置为空则直接插入如果该位置已经存在元素则通过比较键的哈希值和键的相等性来判断是否为相同的键如果是相同的键则更新对应的值如果是不同的键则将该键值对添加到链表或红黑树的末尾。当从 HashMap 中获取值时根据键的哈希值计算出在数组中的存储位置然后遍历链表或红黑树进行比较找到对应的键值对并返回值。当从 HashMap 中删除键值对时根据键的哈希值计算出在数组中的存储位置然后遍历链表或红黑树进行比较找到对应的键值对并删除。 9HashMap在JDK1.7和JDK1.8中有哪些不同 HashMap的底层实现 在 JDK 1.7 和 JDK 1.8 中HashMap 的实现有以下不同之处 JDK 1.7 中的 HashMap 使用数组和链表的组合来存储键值对当链表长度超过一定阈值时会将链表转换为红黑树以提高查找效率。而 JDK 1.8 中引入了红黑树的新实现即链表长度超过一定阈值时会进行树化操作使得整个查找过程更加高效。JDK 1.8 中的 HashMap 在处理哈希冲突时使用了一种新的方式即通过计算键的哈希值和数组长度的按位与操作来确定存储位置而不是传统的取模操作这样可以更快地计算出存储位置。JDK 1.8 中的 HashMap 在扩容时使用了一种新的方式即将原来的数组分成两个部分分别处理原数组中的元素和新增元素减少了元素的复制次数提高了扩容的效率。 10HashMap的put方法的具体流程 HashMap 的 put 方法的具体流程如下 首先根据键的哈希值计算出在数组中的存储位置。如果该位置为空则直接将键值对插入到该位置。如果该位置已经存在元素则遍历链表或红黑树进行比较找到对应的键值对。如果找到了相同的键则更新对应的值。如果找到了不同的键则将该键值对添加到链表或红黑树的末尾。如果链表或红黑树的长度超过一定阈值进行相应的转换操作链表转换为红黑树或红黑树转换为链表。如果数组的使用空间超过了负载因子默认为 0.75乘以数组长度的阈值进行扩容操作将原来的数组扩大一倍并重新计算存储位置。 通过以上流程HashMap 的 put 方法可以实现将键值对添加到 HashMap 中并根据键的哈希值进行查找和更新操作。 开源项目地址https://gitee.com/falle22222n-leaves/vue_-book-manage-system 前后端总计已经 800 Star1.5W 访问 ⭐点赞⭐收藏⭐不迷路⭐

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88157.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

荆州网站建设兼职wordpress的知名网站

【BASH】回顾与知识点梳理 十五 十五. 指令与文件的搜寻15.1 脚本文件名的搜寻which (寻找『执行档』) 15.2 文件档名的搜寻whereis (由一些特定的目录中寻找文件文件名)locate / updatedbfind与时间有关的选项与使用者或组名有关的参数与文件权限及名称有关的参数额外可进行的…

产品营销型网站建设网站建设要准备什么软件

INFILE的用法 1)模糊导入多个数据的文件。 可以在文件名中使用通配符。 星号 (*) 表示复数字符,问号 (?) 表示单个字符。 INFILE emp*.dat INFILE m?emp.dat 2)如果不需要导入数据…

电器企业网站建设做网站推广大概需要多少钱

来源:蓝焱资本2021年已过半,物联网时代已经到来。毫无疑问,万物联网的背后是万物数字化,而数字化万物的核心就是传感器。传感器这个概念虽然已经存在多年,但它依旧是个活力无限的领域。随着物联网概念的火热&#xff0…

重庆网站优化软件app开发模板网站

Linux 中有 cron 程序定时执行任务,Kubernetes 的 CronJob 提供了类似的功能,可以定时执行 Job。CronJob 配置文件示例如下: ① batch/v2alpha1 是当前 CronJob 的 apiVersion。 ② 指明当前资源的类型为 CronJob。 ③ schedule 指定什么时候…

台州网站seo字体设计网站有哪些

SQL是结构化的,NoSql是非结构化的 SQL是关联的: Nosql是无关联的: SQL采用的是SQL查询: 语法固定,好处是:只要是关系型数据库(Mysql,Oracle),都能够使用相同的语句进行查…

网站主机教程WordPress建站维护服务

此项目是针对PDF、docx、doc、PPT四种非结构化数据进行解析,识别里面的文本和图片。 代码结构 ├── Dockerfile ├── requirements ├── resluts ├── test_data │ ├── 20151202033304658.pdf │ ├── 2020_World_Energy_Data.pdf │ ├── …

公众号网站开发定制鱼缸一般多少钱

接上一篇:分布式6大核心专题_分布式Session https://gblfy.blog.csdn.net/article/details/113802195 文章目录1. 安装redis服务并启动2. 引入Spring Session组件3. 分别启动8081端口和8082端口4. 调用8081登录接口5. 调用8081获取用户信息接口6. 调用8082获取用户信…

优惠卷网站建设怎么挣钱带登录网站模板

程序示例精选 PythonQt多点最短路径(最优路径)算法实现 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《PythonQt多点最短路径(最优路径)算法实现》编写代码,代码整洁&#xff0…

中国建设银行网站如何注册学校的网站开发过程

新加坡服务器数据中心怎么保护网络安全原创 保护新加坡服务器数据中心的网络安全是一个重要的任务,以下是一些常见的保护网络安全的办法和办法: 防火墙设置:装备和办理强壮的防火墙来监控和过滤网络流量,阻止未经授权的拜访和歹意…

页面设计排版网站中国化学第九建设公司网站

哲学:世界观的理论形态,或者说是系统化、理论化的世界观;世界观和方法论的统一。马克思主义哲学:辩证唯物主义和历史唯物主义,关于自然。社会和思维发展的普遍规律的学说,无产阶级世界观的理论体系。世界观…

公司建网站做app要多少钱舟山网站网站建设

目录 一. nginx介绍 1. nginx简介 2. nginx和apache区别 二. nginx编译安装 1. 下载解压nginx安装包,并安装nginx依赖包 2. 创建运行用户和组 3. 编译安装并补全 4. 效验结果 三. 平滑升级nginx 1. 下载解压nginx安装包 2. 编译安装 3. 替换二进制文件 …

域名服务器地址seo优化与推广招聘

1 什么是block iOS SDK 4.0開始,Apple引入了block这一特性。字面上说,block就是一个代码块。可是它的奇妙之处在于在内联(inline)运行的时候(这和C非常像)还能够传递參数。同一时候block本身也能够被作为參数在方法和函数间传递。这就给予了block无限的可…

阿里云学生认证免费服务器网站seo外链平台

01、函数指针1.1、函数指针定义一个函数总是占用一段连续的内存区域,函数名在表达式中有时也会被转换为该函数所在内存区域的首地址,这和数组名非常类似。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使…

摄影网站的建设的论文商店设计效果图

目录 1. Nginx在CentOS上的安装部署 1.1 Nginx简介 1.2 Nginx安装 1.2.1 安装yum依赖程序 1.2.2 手动添加,nginx的yum仓库 1.2.3 通过yum安装最新稳定版的nginx 1.2.4 启动 1.2.5 配置防火墙放行 1.2.6 启动后浏览器输入Linux服务器的IP地址或主机…

网站审核备案 几天天津网站快速备案

在浏览器gerrit的设置界面设置的邮箱地址和在命令行使用git config --gloable user.email设置的邮箱地址必须保持一致吗 在浏览器gerrit的设置界面设置的邮箱地址和在命令行使用git config --global user.email设置的邮箱地址并不一定需要保持一致。这两个邮箱地址是独立的&am…

网站建设的费用是不是含税的哪个小说网站防盗做的好

组件拆分 先把项目搭建时生成的代码给清了吧 现在static目录下引入reset.css 接着在index.html引入&#xff0c;并且设置<meta> 有时候呢&#xff0c;为了让代码符合我们平时的编码习惯&#xff0c;我们可以在ESLint进行设置&#xff0c;如下&#xff1a; 回到入口js文件…

网站开发文件综述沈阳商城网站开发

开关式智能充电机-全自动充电机-铅酸电池充电机品牌-济南能华NHCD系列 全自动智能充电机&#xff0c;可调智能充电机&#xff0c;可调直流充电机&#xff0c;可调全自动充电机 &#xff0c;可调蓄电池充电机 便携式可调智能充电机 便携式全自动充电机 大功率可调充电机 大功率智…

网站建设与发布的预算专业网站设计的公司

H263码流尺寸规格有限&#xff0c;只有以下几种&#xff1a; H263码流有四个分层&#xff1a; 1、图像层 2、块组 3、宏块 4、块 下面分别介绍&#xff1a; 具体介绍如下&#xff0c;5.1.3中红色框选部分就是压缩码流的宽高指示&#xff1a; 图像层 上面就是H263的图像层&am…

网站建设运营成本上海网站建设上海员君

出生于中国镇江的艺术家刘汉清&#xff0c;其作品展现出他对日常生活的深入洞察力&#xff0c;以及对美的独特理解。他的作品通常没有视觉参考&#xff0c;而是通过对他周围环境的理解&#xff0c;尤其是他的宠物&#xff0c;来进行创作。 在刘汉清的创作过程中&#xff0c;他…

网站首页布局有哪些网站域名到期不续费会怎么样

ChatGPT无限次数:点击直达 利用ChatGPT提升学术论文写作技巧 在当今信息爆炸的时代&#xff0c;学术界对于深入研究和撰写高质量论文的要求越来越高。然而&#xff0c;许多研究人员和学生常常感到写作过程困难&#xff0c;需要花费大量时间和精力。这时候&#xff0c;人工智能…