自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 【JAVA语言-第20话】多线程详细解析(二)——线程安全,非线程安全的集合转换成线程安全

指如果有多个线程在同时运行,而这些线程可能会同时运行某段代码,程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全。在多线程中,线程安全问题是不允许被出现的。所以我们在使用多线程时,对于共享数据,可以通过synchronized关键字和Lock锁来处理,保证线程安全。synchronized使用简单但灵活性较差;而Lock是一个更灵活的同步方式,可以实现更复杂的同步需求,但需要手动管理锁的获取和释放。在实际开发中,可以根据具体需求进行选择。

2024-05-08 20:00:31 799

原创 【JAVA语言-第19话】多线程详细解析(一)

指一个内存中运行的应用程序,每一个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程,进程也是程序的一次执行过程,是系统运行程序的基本单位,系统运行一个程序即是一个进程从创建、运行到消亡的过程。线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程,一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。启动线程后,实际是两个线程并发的运行,当前线程(main线程)和另一个线程(创建的新线程,执行其run()方法)。java虚拟机调用该线程的run()方法。

2024-04-10 19:00:00 984

原创 我的CSDN——128天创作纪念日,畅谈机缘、收获、日常与憧憬

有时候开始一件事比想象中简单,在没有开始写博客前,我仍然是CSDN的忠实粉丝,其中很多优质文章也让我收益良多。但要不怎么说凡事都讲究缘分,我和CSDN的缘分也是妙不可言。在目前的博客分享中,我更多的是以java为主线展开,大多都是针对具体的语法知识点引入相对应的代码案例。但其实我最喜欢的代码,还是算法类型的,它让我觉得代码不只是解决程序中的一些问题,和生活的关联也是颇大。2.但人的精力都是有限的,在平衡工作和创作的过程中,我会优先完成自己的本职工作,但也会把空余时间优先分配给创作。

2024-03-24 23:58:48 353

原创 【Java语言】遍历List元素时删除集合中的元素

分享几种从List中移除元素的常用方法,【注意事项】尤其重要,很容易踩坑。使用普通实现方式,一目了然,但是代码行数比较多;使用1.8新增功能实现,代码就会简洁,但是在团队配合开发的场景中,如果没有了解过1.8新增特性的,可能可读性不强。方式各有优劣势,根据需求择优选择。

2024-03-13 16:08:11 1388

原创 【数据结构与算法(Java版)】深度剖析二分查找算法

在生活中,我们经常会接触到查找。不同的查找方式效率也会有所不同,今天就来了解一下【二分查找算法】。假设,有一个存在n个元素的升序排序数组(如下图),需要查找某个目标值在数组中的索引值。一般会如何去实现?按照我们正常的思路,可能首先想到的是遍历该数组,依次将每一个元素和目标值比较,直到找到目标值,返回索引,否则返回-1。

2024-02-25 17:04:21 800

原创 【JAVA语言-第18话】集合框架(五)——Map、HashMap、LinkedHashMap、TreeMap集合

在Java中,HashMap是一种实现了Map接口的键值对存储结构。它是基于哈希表的实现,通过哈希函数将键映射到数组中的位置来存储和检索值。由于使用哈希表,HashMap提供了高效的插入,删除和查找操作,其时间复杂度通常接近常数时间。HashMap允许存储null键和null值,并允许多个null值存储。HashMap中的键和值可以是任意类型的对象,通过hashCode()和equals()方法来确定键的唯一性。

2024-02-18 19:00:00 810

原创 【JAVA语言-第17话】集合框架(四)——单列集合总结,Collections工具类的常用方法,可变参数,斗地主发牌案例

可变参数是一种特殊的参数类型,它允许在方法调用时传入可变数量的参数。使用可变参数可以方便地处理需要传入不确定数量参数的情况,而不需要显式地创建一个数组。在方法的参数列表中,可变参数使用三个点(...)来表示。是JDK1.5之后出现的新特性。

2024-01-31 19:46:46 1031 1

原创 【JAVA语言-第16话】集合框架(三)——Set、HashSet、LinkedHashSet、TreeSet集合的详细解析

在Java中,HashSet是一种基于哈希表的集合实现。它继承自AbstractSet类并实现了Set接口。HashSet类在内部使用哈希表来存储元素,并且不保证元素的顺序。它允许存储唯一的元素,不允许重复。HashSet提供了常量时间的查找、插入和删除操作,因此可以在大多数情况下提供高效的性能。在Java中,LinkedHashSet是一种集合类,它是HashSet的子类。它继承了HashSet的特性,同时还保持了元素的插入顺序。

2024-01-29 21:00:00 1260

原创 【JAVA语言-第15话】集合框架(二)——List、ArrayList、LinkedList、Vector集合

ArrayList是一种动态数组,它实现了List接口。ArrayList可以根据需要自动调整大小,可以存储任意类型的对象。ArrayList提供了一系列的方法,可以方便地对其中的元素进行添加、删除、查找和遍历操作。与普通的数组相比,ArrayList的大小是可变的,并且可以自动处理底层数组的扩容和缩容。使用ArrayList能够方便地操作和管理一系列对象的集合。LinkedList实现了Java的List接口,因而可以像其他List实现类一样使用。它也实现了Deque接口,因而可以作为双端队列使用。

2024-01-24 21:09:32 1455 1

原创 【JAVA语言-第14话】集合框架(一)——Collection集合,迭代器,增强for,泛型

什么是集合框架?集合和数组的区别是什么?集合如何通过迭代器或者增强for进行遍历?什么是泛型?泛型的利弊有哪些?以上问题本文皆可解答。

2024-01-23 19:00:00 1285 1

原创 【JAVA语言-第13话】异常处理 之 try-catch-finally,throws,throw关键字的详细解析

Java中关于异常的详细讲解,包含什么是异常?异常有哪些分类?异常处理关键字:try,catch,finally,throws,throw的使用格式和案例分析,以及如何自定义异常。

2024-01-17 20:42:15 1306

原创 【JAVA语言-第12话】API中的工具类 之 Date,DateFormat,SimpleDateFormat,Calendar类的详细解析

Date,DateFormat,SimpleDateFormat,Calendar类,关于构造方法和常用方法的讲解,附带各种案例,通俗易懂。

2024-01-13 21:52:51 1181 1

原创 回顾我的2023年

2023年的回顾和感想,2024年的规划。

2024-01-07 16:31:22 541 2

原创 【JAVA语言-第11话】API中的工具类 之 String,StringBuilder,StringBuffer的详细解析与异同点

字符串操作类String、StringBuffer、StringBuilder的创建和常用方法,三个类的异同点和注意事项。

2024-01-06 15:36:05 1049 4

原创 【JAVA语言-第10话】Java API的下载和使用,装箱和拆箱的详解,Math、Random、System、Object、Objects类的使用和常用方法

Java API的在线和离线使用方法;基本类型对应的引用类型;装箱和拆箱的详解;Math、Random、System、Object、Objects类的使用和常用方法整理。

2023-12-31 21:27:07 1061

原创 【JAVA语言-第9话】final关键字,static关键字,内部类

详细解析,什么是内部类。内部类的分类(成员内部类,局部内部类,匿名内部类)。其中,成员内部类包括:静态内部类和非静态内部类,二者之间存在细微差异,区分场景使用。接口作为方法的参数和返回值的案例讲解。final关键字的常见用法和注意事项。static关键字的概述和使用,静态代码块的定义格式。

2023-12-23 13:53:17 853 1

原创 【JAVA语言-第8话】抽象类和抽象方法、接口和实现类

抽象类和抽象方法的认识、使用和注意事项。接口的定义(包括接口中抽象方法、默认方法、静态方法、私有方法、常量的定义)以及注意事项。抽象父类和子类继承、接口和实现类之间代码实现的综合案例。

2023-12-17 13:59:48 1620 1

原创 【JAVA语言-第7话】面向对象的封装性、继承性、多态性,构造方法,this和super关键字(下)

面向对象的继承性,方法的重写;面向对象的多态性,多态的好处,多态的转型,继承和多态的综合案例。

2023-12-03 16:58:26 1243 3

原创 【JAVA语言-第7话】面向对象的封装性、继承性、多态性,构造方法,this和super关键字(上)

面向对象的特性,权限访问修饰符,封装的优点,this关键字以及构造方法的详解。

2023-11-29 21:43:03 1057 1

原创 【JAVA语言-第6话】面向对象的概述、类和对象、成员变量和局部变量

【JAVA语言-第6话】面向对象的概述、类和对象、成员变量和局部变量

2023-11-26 15:23:20 982 1

原创 【JAVA语言-第5话】方法的定义与调用、方法的重载

方法的定义与调用、方法的重载、输出函数。

2023-11-23 19:58:38 938

原创 【JAVA语言-第4话】数组的概述与基本操作、冒泡和选择排序算法

数组的概述与基本操作冒泡和选择排序算法复制数组数组的内存关系和注意事项

2023-11-20 20:00:00 312 1

原创 【JAVA语言-第3话】流程控制 之 顺序、选择、循环结构

【JAVA语言-第3话】流程控制 之 顺序、选择、循环结构

2023-11-17 20:00:00 343

原创 【JAVA语言-第2话】常量、变量、数据类型、运算符

【JAVA语言-第2话】常量、变量、数据类型、运算符

2023-11-14 22:00:00 141

原创 【JAVA语言-第1话】初识java、环境搭建、入门程序

java概述、JDK的安装、环境变量的配置、入门程序。

2023-11-11 20:43:19 218 2

专升本C语言复习资料和练习题

本人复习专升本时所做的C语言试题,内容全面,知识全面,准时时间短,全靠刷题,所以考上之后特意整理了一下,里面包括二十多套C语言练习题,大多数附带答案,希望能帮助到正在准备专升本的同学们。

2021-05-28

空空如也

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

TA关注的人

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