- 博客(10)
- 收藏
- 关注
原创 类型溢出(Java)
类型溢出(Type Overflow)是编程中常见的问题,指变量存储的数据超出了其数据类型所能表示的范围。就像往杯子里倒水,当水超过杯子的容量时就会溢出,计算机中的变量也是如此。
2025-04-02 19:52:33
694
原创 荷兰国旗问题(Java)
这个方法需要注意的就是:当 nums[index] == 2 时,不应该增加 index,因为交换后的 nums[index] 的值可能是 0 或 1,需要再次检查。荷兰国旗问题(Dutch National Flag Problem)要求将一个包含。方法3:快速排序的变种(Partition)根据计数重新填充数组。
2025-04-01 20:45:37
309
原创 Java中的二分查找
这道题应该是最常见的有关二分查找的例题,其中比较重要的点就是:1、静态方法怎么调用非静态方法,代码中的注释也出了答案。这段代码通过遍历二维数组的每一行,并在每一行中使用二分查找来高效地查找目标值。由此可见使用无符号右移运算符“>>>”,即使发生了类型溢出也不影响后续结果的正确与否。通过选择合适的起始点和移动方向,可以确保不会错过任何可能的区域,同时避免不必要的搜索。选择起始点:可以从左下角或右上角开始,因为这两个位置可以同时利用行和列的有序性。关于上面的代码还有另一种写法,并返回目标值的下标。
2025-03-26 20:17:37
816
原创 《ArrayList核心代码阅读》
else {!i < size;i++)return i;} else {i < size;i++)return i;return -1;i >= 0;i--)
2025-02-15 10:35:34
999
原创 《Integer缓存池》
在Integer类的源代码中,缓存池的实现是通过一个内部类IntegerCache来完成的。以下是IntegerCachestatic {= null) {try {high = h;k++)Integer缓存池是Java中一个重要的优化机制,它通过预先创建并缓存一定范围内的Integer对象,减少了内存开销和对象创建的开销。通过Integer.valueOf(int i)方法,我们可以充分利用这个缓存池,提升程序的性能。理解Integer。
2025-02-14 11:01:57
936
原创 == 和 equals() 的区别
2、引用数据类型如果没有重写 equals() 方法,会默认自动调用父类 Object 类中的 equals() 方法,该方法仍然采用 == 运算符实行内存地址的比较,所以,引用数据类型一般都需要重写 equals() 方法,用于实现值或内容的比较。1、只有引用类型才可以使用 equals() 方法,基本数据类型·不能使用 equals() 方法;java.lang.String类中的 equals() 方法。java.lang.Object类中的 equals() 方法。
2025-02-12 08:37:40
198
原创 Abstract 抽象类
在 Java 中,抽象类是使用 abstract关键字修饰的类。抽象类是一种特殊的类,它的主要特点是不能被实例化,即不能使用new关键字创建抽象类的对象。抽象类是 Java 中面向对象编程的一个重要概念,它提供了一种介于普通类和接口之间的结构。通过抽象类,可以为一组相关的类提供一个共同的基础,同时允许不同的子类以自己的方式实现抽象方法,既实现了代码的复用和共享,又保证了子类实现的灵活性和多样性,使得代码更具可维护性和可扩展性。
2025-01-22 14:12:43
622
原创 在Java中什么是异常
异常(Exception)是在程序执行过程中出现的意外或错误情况。可以通过继承Exception(用于检查型异常)或(用于运行时异常)类来创建自己的异常类。这在需要根据特定的业务逻辑定义异常情况时非常有用。
2025-01-20 17:57:00
905
原创 浮点数精度丢失问题
浮点数精度丢失问题:某些十进制小数在二进制中是无限循环小数,如0.1,会导致存储和计算时的精度丢失。设置转换时的精度只能避免无限循环的计算,但无法解决存储位数有限导致的精度丢失。使用高精度计算库(如BigDecimal)可以缓解浮点数的精度丢失问题。总之,浮点数精度丢失是由于存储位数有限导致的,在涉及精确计算时,需要考虑使用高精度数据类型或计算库,而不是仅仅依靠设置转换精度。
2025-01-19 20:30:50
979
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人