java基础
文章平均质量分 55
杜小哥
这个作者很懒,什么都没留下…
展开
-
记一道简单的java面试题
这可能是历史上最简单的一道java面试题了。题目很简单,完成代码,判断一个整数是否是奇数public boolean isOdd(int i)作者:方志宏链接:https://zhuanlan.zhihu.com/p/57859872来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。相信相当数量的人都已经在准备吐槽了,只要看过《编程珠玑》的人都知道这道题的答案和其中极为简单的道理。不过别着急骂街,不管你信不信,这道笔试题我拿到的答案好多都长这...转载 2021-11-16 09:39:52 · 135 阅读 · 0 评论 -
@AllArgsConstructor与@Value注解不能同时使用
解决问题结论:将AllArgsConstructor改成RequiredArgsConstructor,然后把需要注入的bean改成final类型的,就可以了。Lombok三种构造方法介绍@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor。是Lombok插件三种生成不同构造方法的注解,来完成项目中不同构造方法的需求。@NoArgsConstructor : 生成一个无参数的构造方法@AllA...原创 2021-10-21 10:34:03 · 2073 阅读 · 0 评论 -
java写一个方法将一个字符串中连续出现的字符替换为一个字符
public static void main(String[] args) { String rs="//a/b/c///d/e/////f//g/////H"; //+为一个或多个 System.out.println(rs.replaceAll("(/)+", "/")); }原创 2021-07-14 11:16:46 · 782 阅读 · 0 评论 -
Java实现Map深拷贝
开题Map进行复制时候,会涉及到两种场景1、map中不包含对象2、map中包含对象1、map中不包含对象 @Test public void putAllTest1() throws InterruptedException { Map<String, Object> goods = new LinkedHashMap<>(); goods.put("name", "可口可乐"); goods.put.原创 2021-05-13 10:25:46 · 8445 阅读 · 0 评论 -
Java 浅拷贝和深拷贝
开题在日常开发过程中,有时会遇到把现有的一个对象的所有成员属性拷贝给另一个对象的需求。对象如果是基础数据类型,用普通赋值都没有问题,如果对象是引用类型,则会发现,A对象复制的对象B,a.a发生了改变,则B.a也跟着发生改变,造成这个的原因是因为A、B它们是指向同一个地址的。Java 中的数据类型分为基本数据类型和引用数据类型。对于这两种数据类型,在进行赋值操作、用作方法参数或返回值时,会有值传递和引用(地址)传递的差别。 根据对对象属性的拷贝程度(基本数据类和引用类型),会把拷贝分为两..原创 2021-05-13 00:05:56 · 153 阅读 · 0 评论 -
java用枚举替代switch
@Datapublic class Pizza { private PizzaStatus status; public enum PizzaStatus { ORDERED (5){ @Override public boolean isOrdered() { return true; } }, READY (2){ .原创 2021-03-12 11:38:22 · 549 阅读 · 0 评论 -
对象注入时候使用构造注入还是@Autowired?
使用Spring开发时,我们通常有两种依赖注入的方式,基于构造函数或基于setter的依赖注入。日常开发时候,我们一般使用注解@Autowired注入,但是细心点的小伙伴会发现,使用注解@Autowired注入有一个警告:Inspection info: Spring Team recommends: "Always use constructor based dependency injection in your beans. Always use assertions for mandato原创 2021-02-02 17:00:38 · 1210 阅读 · 2 评论 -
java中Double与Float计算加减乘除时,精度丢失问题解决
double、float类型数据加减操作精度丢失问题问题:在进行double、float类型的计算时,会出现精度丢失问题如:1+1.1+1.01,预期结果3.11,可在程序计算中却不是这个结果public static void main(String[] args) { double d1 = 1; double d2 = 1.1; double d3 = 1.01; double d4= d1 + d2 + d3;原创 2021-01-21 15:37:48 · 3031 阅读 · 1 评论