合集-从零开始学Java
摘要:前言 在之前讲解static静态内部类时,就给大家简单说过内部类的概念。但实际上,内部类并不是那么简单,所以今天我们需要对内部类进行专门地讲解和学习。 全文大约 【6500】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富的案例及配图,让你更好地理解和运用文中的技术概念,并可以给你
阅读全文
摘要:# 前言 在之前的两篇文章中,给大家介绍了**String字符串及其常用的API方法、常用编码、正则表达式等内容**,但这些内容都是停留在”如何用“的阶段,没有涉及到”为什么“的层面。**实际上,我们在求职时,面试官很喜欢问我们关于String的一些原理性知识,比如String的不可变性、字符串的内
阅读全文
摘要:前言 我们在开发时,除了数字、数学这样的常用API之外,还有日期时间类,更是会被经常使用。 比如我们项目中必备的日志功能,需要记录异常等信息产生的时间。还有数据库中的表,也经常需要带有日期时间字段,用于记录本条数据产生和更新的时间。另外当我们需要对某段代码进行调优时,也往往需要知道本段代码的执行时间
阅读全文
摘要:我们知道,在现实世界里,实际上数字是有无穷个的,就比如0和1之间,你说有多少个数字?无数个!但是在计算机中,数字的个数其实是有限的,因为计算机有存储空间的限制,所以实际上无论是整数还是浮点数,都是有最大范围的。比如在Java中,整型的最大范围是64位的long型整数。但是有的小伙伴问了,如果我们使用的整数超过了long型的范围怎么办?此时,我们可以通过软件来模拟一个大整数或大浮点数。
在Java中提供了两个用于大数字运算的类,分别是java.math.BigInteger类 和java.math.BigDecimal类。这两个类都可以用于高精度计算,BigInteger类是针对整型大数字的处理类,而BigDecimal类是针对大小数的处理类,我们可以用它们来表示任意大小的整数和浮点数。接下来我们就带大家来学习一下,在Java中如何处理大数字。
阅读全文
摘要:# 前言 我们在解决实际问题时,会经常对数字、日期和系统设置进行处理,比如在我们的代码中,经常会遇到一些数字&数学问题、随机数问题、日期问题和系统设置问题等。 **为了解决这些问题,Java给我们提供了多个处理相关问题的类,比如Number类、Math类、Random类、BigInteger类、Bi
阅读全文
摘要:本系列为:从零开始学Java,为千锋教育资深Java教学老师独家创作 致力于为大家讲解清晰Java相关知识点,含有丰富的代码案例及讲解。如果感觉对大家有帮助的话,可以【点个关注】持续追更~ 技术类问题,也欢迎大家和我们沟通交流! 前言 在上一篇文章中本系列内容给大家讲解了Java里的格式化问题,这样
阅读全文
摘要:本系列为:从零开始学Java,为千锋教育资深Java教学老师独家创作 致力于为大家讲解清晰Java学习相关知识点,含有丰富的代码案例及讲解。如果感觉对大家有帮助的话,可以【关注】持续追更~ 文末有本文重点总结!关于技术类问题,也欢迎大家和我们沟通交流! 前言 我们在解决实际问题时,除了经常需要对数字
阅读全文
摘要:本文将为大家详细讲解Java中的Collection体系,这是我们进行开发时经常用到的知识点,也是大家在学习Java中很重要的一个知识点,更是我们在面试时有可能会问到的问题。 文章较长,干货满满,建议大家收藏慢慢学习。文末有本文重点总结,主页有全系列文章分享。技术类问题,欢迎大家和我们一起交流讨论!
阅读全文
摘要:本文将为大家详细讲解Java中的Map集合,这是我们进行开发时经常用到的知识点,也是大家在学习Java中很重要的一个知识点,更是我们在面试时有可能会问到的问题。文章较长,干货满满,建议大家收藏慢慢学习。文末有本文重点总结,主页有全系列文章分享。技术类问题,欢迎大家和我们一起交流讨论!
阅读全文
摘要:本文将为大家详细讲解Java中Collection与Collections的区别点,这是我们进行开发时经常用到的知识点,也是大家在学习Java中很重要的一个知识点,更是我们在面试时有可能会问到的问题
阅读全文
摘要:本文将为大家详细讲解Java中Properties配置类怎么用,这是我们进行开发时经常用到的知识点,也是大家在学习Java中很重要的一个知识点,更是我们在面试时有可能会问到的问题!文章较长,干货满满,建议大家收藏慢慢学习。文末有本文重点总结,主页有全系列文章分享。技术类问题,欢迎大家和我们一起交流讨论!
阅读全文
摘要:在前面的几篇文章中,详细地给大家介绍了Java里的集合。但在介绍集合时,我们涉及到了泛型的概念却并没有详细学习,所以今天我们要花点时间给大家专门讲解什么是泛型、泛型的作用、用法、特点等内容
阅读全文
摘要:我们可以在定义接口和类时使用泛型,这样该接口和类中的所有方法及成员变量等处,也都可以使用该泛型。但其实泛型可以应用在整个类上,也可以只应用在类中的某个方法上。也就是说,方法所在的类可以是泛型类,也可以不是泛型类。方法中是否带有泛型,与其所在的类有没有泛型没有关系。泛型方法是在调用方法时才确定类型的方法,泛型可以使得该方法独立于类而产生变化。另外,static静态方法无法访问泛型类的类型参数,因此,如果想让一个static方法具有泛型能力,就必须使该静态方法成为泛型方法。
阅读全文
摘要:我们要想成为一个优秀的程序员,其实非常关键的一点就是要锻炼培养自己的编程思维,就好比一个狙击手,要通过大量的射击训练要用大量的子弹喂出来。同样的,一个优秀的程序员,他的逻辑和编程思维,也是靠大量的训练锻炼出来的,而这个训练经常是通过各种“算法”来实现的。所以作为一个从零开始学习的小白,我们必然要学习各种编程算法。这些算法,一方面可以锻炼我们的编程思维,另一方面也是为了完成工作,很多项目中都会或多或少的用到一些算法,并且程序员面试时,算法也是必考的一项。
阅读全文
摘要:本文将为大家详细讲解Java中的
阅读全文
摘要:至此,我们我们已经向大家介绍了冒泡排序、选择排序、插入排序、快速排序、希尔排序等五种经典的排序算法。除此以外,还有堆排序、归并排序、桶排序、计数排序等一些经典的排序算法。大家会发现,我们介绍排序算法的步骤和过程都是相同的,基本都包含算法概念、思想和原理、算法步骤,以及编码实现等几个部分。在本篇的最后,我们给大家总结出经典的排序算法的对比和总结,我们从时间复杂度、空间复杂度、稳定性等几个方面进行横向总结。
阅读全文
摘要:在前面的两篇文章中,给大家介绍了常见的排序算法,除此之外,其实还有查找算法也需要我们掌握。接下来就来给大家讲讲**都有哪些查找算法,以及经典的二分查找法该如何实现。
阅读全文
摘要:线性表可以说是一种最基础最简单的数据结构,它表示的是一种线性结构,比较常见的线性结构包括数组和链表等。所谓的链表,顾名思义,就是链式的线性表,即链表也是一种线性表。与数组不同的是,链表采用的是链式存储,这种链式结构是**非连续、非顺序的内存空间**。链表中的每一个独立的元素被称为结点,故链表由一系列的结点组成。
阅读全文
摘要:至此,我们已经连续用两篇文章给大家介绍了链表的相关知识。在上一篇文章中,我们主要介绍了链表的基础知识和单链表的常规操作,同时辅以图示来说明各种操作情况。在本篇文章中,主要是从Java编程角度作为切入点,来进一步讲解双向链表的一些操作。特别是本篇文章中的大量代码实践,需要大家能够理清逻辑关系,希望你可以动手练起来哦!
阅读全文
摘要:栈 (stack)是一种操作受限的线性表,栈的操作被限定在线性表的尾部进行,栈结构有两个特殊概念:
- 栈顶:栈的尾部被称为栈顶(Top);
- 栈底:另一端固定不动,被称为栈底(Bottom)
阅读全文