自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 HashTable,HashMap与ConcurrentHashMap

在多线程环境中,HashTable、HashMap和ConcurrentHashMap各有特点。HashTable通过全局锁实现线程安全,但效率较低,因为任何修改都会触发锁,导致阻塞。HashMap则不具备线程安全机制,多线程修改时易引发安全问题。ConcurrentHashMap作为HashTable的优化版本,采用桶锁机制,仅对同一链上的修改加锁,提高了效率。此外,它使用原子类维护size,并优化了哈希扩容过程,减少了加锁时间,从而在多线程环境下表现更优。

2025-05-18 11:45:43 265

原创 Synchronized总结

synchronized是 Java 中用于实现线程同步的关键字,确保在同一时刻只有一个线程可以执行被 synchronized 修饰的代码块或方法,从而保证并发安全性。其底层实现依赖于 JVM 和操作系统的支持synchronized 的底层实现依赖于 JVM,通过进入和退出 Monitor 对象来实现方法同步和代码块同步。方法级的同步是隐式的,通过方法表结构中的 ACC_SYNCHRONIZED 标志来实现。

2025-05-02 10:34:56 939

原创 线程池总结

我们以jdk文档中的来详细介绍TimeUnitunit,Runnablehandler)创建一个新的与给定的初始参数。参数。

2025-04-25 20:28:13 885

原创 单例模式(线程安全)

单例模式(Singleton Pattern)是一种创建型设计模式,旨在确保一个类只有一个实例,并提供一个全局访问点来访问该实例。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必须给所有其他对象提供这一实例。

2025-04-21 20:34:42 1048

原创 线程安全总结

线程安全问题指的是当多个线程同时访问和操作共享资源(如变量、数据结构等)时,由于缺乏有效的同步控制,导致程序出现不可预期的错误或数据不一致的现象。其核心在于并发操作破坏了程序的正确性。通俗来说就是一段代码在多线程 并发执行后 出现bug。

2025-04-20 16:06:55 504

原创 Java线程的几种状态

线程状态我们在此介绍六种线程状态 1.NEW2.3.4.BLOCKED5.WAITING6.TERMINATED。

2025-04-18 17:55:03 1615

原创 Thread类的基本用法

只要在三千之内比如main线程等待thread线程1000 那么main就会等thread结束再进行操作 但如果超过三千 当等待时间到达三千时main 就不会再等thread线程结束才执行 而是直接执行不再等待,因此这种带有超时时间的等待才是科学的 记住要先学会爱自己 再去爱别人。System.out.println("thread线程已结束");System.out.println("main线程在执行");System.out.println("main线程执行结束");(较为推荐此种写法)

2025-04-15 17:51:12 854

原创 进程和线程的区别和联系

进程是操作系统进行资源分配和调度的基本单位。每个进程拥有独立的内存空间、文件句柄、环境变量等系统资源。线程是进程内的一个执行单元,是CPU调度的最小单位。同一进程的多个线程共享进程的内存和资源。进程是资源的容器,线程是执行的单元。选择依据:- 需要隔离性 → 多进程;- 需要高效协作 → 多线程。无论是进程还是线程,理解其底层原理都能帮助开发者更好地设计高并发、高可用的程序。在实际开发中,两者常结合使用(如多进程+多线程),以平衡性能与稳定性。

2025-03-28 13:30:15 1051

原创 七大基于比较的排序算法

所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作

2024-11-30 10:29:53 1517

原创 PriorityQueue(优先级队列堆)

与普通队列不同,优先队列中的元素是按排序顺序检索的。因此,数据结构应该提供两个最基本的操作,一个返回最高优先级对象,一个添加新的对象,这种数据结构就是优先级队列(Priority Queue)。: 删除队列的头部元素。所有元素按照完全二叉树的形式存储在一维数组中,根节点的值总大于子节点的为大根堆,小于的是小根堆。: 将指定的元素插入此优先级队列。,但有些情况下,操作的数据可能带有优先级,一般出队列时,可能需要。: 将指定的元素插入此优先级队列。: 删除并返回队列的头部元素。: 返回队列中元素的迭代器。

2024-11-24 11:04:50 593

原创 栈和队列(Java)

以Java语言阐述数据结构中的栈和队列

2024-11-11 22:08:09 1209

原创 链表(Linkedlist)

例如,要在单链表的头部插入一个新节点,只需让新节点的指针指向原头部节点,再将新节点设为头部即可。缺点是每个节点的存储开销较大,因为多了一个指针域,并且插入和删除操作的代码相对复杂,要同时处理前驱和后继节点指针的更新。我们都了解链表是一种数据的存储结构,在Java使用中逻辑与c++,c语言数据结构别无二致,但主要由于Java中不存在指针的说法,从而导致在实现过程中的代码不同,所以在学习的过程中我们无需过于担心,逻辑都是想通的,此博客就是针对Java中的主流两种链表进行介绍。1.插入链表节点的代码。

2024-11-10 19:46:50 889

原创 异常(Exception)

自定义用户密码异常类以自定义登录为例:if(!throw new UsernameException("用户名错误。。。。。");if(!throw new PasswordException("密码错误。。。。。");else{System.out.println("登录成功!。。。。。。");super(s);this("");}//自定义密码异常类super(s);this("");}//自定义用户名异常类。

2024-09-18 21:35:56 935

原创 String字符串

三.字符串与数组之间的转换1.字符串转为数组。

2024-09-12 21:19:23 1031

原创 inheritance(继承)and polymorphism(多态)

继承与多态

2024-09-10 16:51:12 1075

原创 static and codeblock(代码块)内容分享

static and codeblock

2024-09-04 17:26:24 445

原创 JavaSE 图书管理系统 代码详解

我在设置了三个包 也可以以其他方式“src”是源代码目录设计者可以在各功能实现过程中不断地调试进而优化和调整代码内容初始化了一个iOperation类型的数组,包含了ExitOperation、FindOperation、AddOperation、Deloperation和ShowOperation这多种操作(作者曾疑惑于此)

2024-06-01 20:51:23 1215

原创 Java类与对象

介绍java中类与对象的概念

2024-05-19 12:23:52 569

原创 数据在内存中的存储

数据在内存中存储

2024-03-22 21:04:54 281 2

原创 如何判断编译器是大端字节序还是小端字节序

判断电脑字节序存储

2024-03-22 20:52:45 419 1

原创 C语言memmove函数模拟实现

memmove 函数模拟实现

2024-03-21 22:17:36 304 1

原创 C语言memcpy函数模拟实现

memcpy 函数模拟实现

2024-03-20 22:36:55 543 1

原创 C语言strcat拼接函数模拟

strcat拼接字符串函数模拟

2024-03-19 20:32:31 346 1

原创 C语言函数strncpy模拟实现

实现strncpy的功能将n个字符由字符串1复制到字符串2

2024-03-19 16:58:20 212 1

原创 C语言指针

char*访问一个字节 标准规定:允许指向数组元素的指针与指向数组最后一个元 素后面的那个内存位置的指针比较 但是不允许与指向第一 个元素之前的那个内存位置的指针进行比较。

2024-03-10 13:54:15 695 1

原创 扫雷游戏设计

扫雷初步的实现

2023-12-30 18:14:19 582 2

原创 c语言 猜数字游戏初代码

printf("***********请输入数字0,1********\n");printf("输入错误,请重新输入:");printf("0表示退出,1表示继续\n");printf("小宝贝猜的太小了\n");printf("小宝贝猜的太大了\n");printf("请输入要猜的数字:》");printf("恭喜你猜对了\n");printf("请输入:\n");printf("已退出");

2023-12-29 14:57:29 424 1

原创 C语言分支循环语句

主要介绍c语言中的分支循环语句

2023-12-02 10:35:45 99 4

原创 利用冒泡排序法处理排序

int main()int i;for (i = 0;i < 3;i++)int iTem;int j;for (i = 1;i < 3;i++)for (j = 2;j >=i;j--)for (i = 0;i < 3;i++)return 0;

2023-11-29 17:49:44 81 2

原创 判断位数问题(5位及以内)

int main()int n;int num;num = 5;num = 4;num = 3;num = 2;elsenum = 1;return 0;

2023-11-29 17:10:57 113 1

原创 三角形面积求法(海伦公式)

/引用pow函数求次方问题。#include<math.h>//引用数学函数。

2023-11-29 16:45:39 97 1

原创 就C语言判断素数问题

关于素数的判断

2023-11-27 20:03:38 80

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除