1.前言中国有句老话叫"事不过三",指一个人犯了同样的错误,一次两次三次还可以原谅,超过三次就不可原谅了。有人指出这个“三”是虚数,用来泛指多次,所以"事不过三"不包括“三”。至于"事不过三"包不包括“三”,可能跟每个人的底线有关系,属于哲学范畴,不在本文的讨论范围之内。写代码也是如此,同一个代码“坑”,踩第一次叫"长了经验",踩第二次叫"加深印象",踩第三次叫"不长心眼",踩三次以上就叫"不可救
转载
2023-07-18 15:17:13
66阅读
前言中国有句老话叫"事不过三",指一个人犯了同样的错误,一次两次还可以原谅,再多就不可原谅了。写代码也是如此,同一个代码“坑”,踩第一次叫"长了经验",踩第二次叫"加深印象",踩第三次叫"不长记性",踩三次以上就叫"不可救药"。在本文中,笔者总结了一些 Java 坑,描述了问题现象,进行了问题分析,给出了避坑方法。希望大家在日常工作中,遇到了这类 Java 坑,能够提前避让开来。1 对象
转载
2023-09-06 15:02:07
29阅读
这里主要谈下Java集合在使用中容易被忽略、又容易出现的两个“坑”,一个是集合与数组互相转换,另一个是集合遍历删除。主要通过代码演示。 一.集合与数组互相转换中的“坑” //Test1.java
package com.itszt.test0419;
import java.util.ArrayList;
import java.util.Arrays;
import ja
转载
2024-06-08 18:26:52
17阅读
https://mp.weixin.qq.com/s?__biz=MzI4Njc5NjM1NQ==&mid=2247488878&idx=1&sn=e6
转载
2019-07-07 20:55:00
66阅读
2评论
java基础不牢固容易踩的坑 经过一年java后端代码以及对jdk源码阅读之后的总结,对java中一些基础中的容易忽略的东西写下来,给偏爱技术热爱开源的Coder们分享一下,避免在写代码中误入雷区。 (注:如无特殊说明,均以jdk8为基础,本文所有例子均已通过编译器通过,且对输出进行了验证)。1.关于基本类型的包装类的。 基本类型boolean、char、byte、short、int、long
转载
2024-02-03 10:39:27
36阅读
1、用==号比较的坑(1)使用==号的情况Integer orderStatus1 = new Integer(1);
Integer orderStatus2 = new Integer(1);
System.out.println(orderStatus1 == orderStatus2);答案:是false,因为比较的是两个变量的内存地址,很明显这两个变量在栈中的地址当然不一样,所有为fal
转载
2023-08-16 21:17:05
45阅读
下面的坑有些来自别人的技术博客,有些事以前自己遇到的坑,持续补充。。。坑1:三目运算符首先我们看一下这道题:char x = 'x';System.out.println(true?120:x);我们的第一反应结果不就是120吗,但是我们实际运行一下,结果是x。是不是有种诧异的感觉,是不是觉得被带沟里去了?不知道大家感觉如何,反正我看到这个结果都惊呆了。对于三目运算符中的两个结果,如果一个是常量,
转载
2023-09-11 08:40:07
61阅读
Java中MessageFormat的坑问题现象某个业务功能需要通过SSH协议执行命令查询一些数据,而某次查询居然没有得到任何结果,导致界面没有任何数据,但是手动执行这个命令又是能够查询到数据的。刨了半天日志也确实没有看到日志里面有什么异常的信息,百思不得其解数据究竟去哪里了???1问题排查看了一段时间还是没有什么头绪,这个时候内心开始慌了。image-20220619144748654赶紧看了一
原创
2022-06-19 17:29:54
499阅读
//本文将收录到公众号菜单栏:《面试官来了》专栏中看到大家对上篇《Java面试中遇到的坑》一文表现出强力的关注度,说明大家确实在面试中遇到了类似的难题。大家在文章留言处积极留言探讨面试中遇到的问题,其中几位同学还提出了自己的见解,我感到非常高兴,还有几位同学强烈要求给出题目答案,那我很乐意跟大家一起探讨分享这些题目。我将题目答案写下来,这个并非标准答案,有不准确的地方请大家辩证补充。1.Strin
原创
2021-05-07 21:02:34
140阅读
看到大家对上篇一文表现出强力的关注度,说明大家确实在面试中遇到了类似的难题。
原创
2021-08-12 16:23:05
161阅读
近日在基于Netty写异步HttpClient的时候,需要等http连接建立并通道打开后,才能使用该连接来发送数据,但是Netty中只能等待到连接建立就会返回一个用来收发数据的channel,如果channel并没有打开,用来发送数据时就会报错,因此需要在代码中等到channel打开后再返回,想到了使用简单的wait¬ify来解决,先上一段代码:public class H...
原创
2021-07-30 15:20:52
69阅读
先看一段代码示例:System.out.println(newBigDecimal(0.99));System.out.println(newBigDecimal("0.99"));System.out.println(BigDecimal.valueOf(0.99));System.out.println(newBigDecimal(Double.valueOf(0.99)));System.o
原创
2019-04-26 11:16:02
10000+阅读
Java开发中很多人都不愿意修改自己以前的代码,看别人的代码更是无法忍受,当看到别人代码里面一些匪夷所思的写法实现时,恨不得找到负责人好好跟他谈谈心,那么你在开发中是不是也使用到以下几种实现呢。1.StringBuilder替代String拼接面试中经常问String,StringBuilder,StringBuffer的区别。1.对参数未做空验证,就做判断值相等下面的写法将常量放到方法左边,能防
原创
2021-05-07 20:54:05
199阅读
Java开发中很多人都不愿意修改自己以前的代码,看别人的代码更是无法忍受,当看到别人代码里面一些匪夷所思的写法实现时,恨不得找到负责人好好跟他谈谈心,那么你在开发中是不是也使用到以下几种实现呢。
原创
2021-08-12 17:27:59
112阅读
一、java中的正则转义 在java中有许多对字符串的处理方法(如:split、replaceAll)需要用到正则表达式,而java对正则的处理不像js那样便捷。 java中没有转义字符串格式,因此使用普通字符串代替,但问题来了,普通字符串中也是支持转义字符的! 因此,我们经常会看到js中需要转移的
转载
2020-07-10 11:15:00
2443阅读
2评论
近日在基于Netty写异步HttpClient的时候,需要等http连接建立并通道打开后,才能使用该连接来发送数据,但是Netty中只能等待到连接建立就会返回一个用来收发数据的channel,如果channel并...
转载
2015-03-19 09:33:00
53阅读
2评论
一、栈简介 栈是一种用于存数数据的简单数据结构(与链表类似)。数据入栈的次序是栈的关键。可以把自助残定中的一堆盘子看作一个栈的例子。当盘子洗干净后,他们会添加到栈的顶端。当需要盘子時,也是从栈的顶端拿取。所以第一个放入栈中的盘子最后才能被拿取。后进先出(Last In First Out,LIFO)或先进后出(First In Last Out, FILO)线
Java开发中很多人都不愿意修改自己以前的代码,看别人的代码更是无法忍受,当看到别人代码里面一些匪夷所思的写法实现时,恨不得找到负责人好好跟他谈谈心,那么你在开发中是不是也使用到以下几种实现呢。
转载
2021-08-12 17:27:08
100阅读
近日在基于Netty写异步HttpClient的时候,需要等http连接建立并通道打开后,才能使用该连接来发送数据,但是Netty中只能等待到连接建立就会返回一个用来收发数据的channel,如果channel并...
转载
2015-03-19 09:33:00
74阅读
2评论
近日在基于Netty写异步HttpClient的时候,需要等http连接建立并通道打开后,才能使用该连接来发送数据,但是Netty中只能等待到连接建立就会返回一个用来收发数据的channel,如果channel并没有打开,用来发送数据时就会报错,因此需要在代码中等到channel打开后再返回,想到了使用简单的wait¬ify来解决,先上
原创
2021-07-30 15:20:49
65阅读