
java
巴哥面试
一个为面试的中年油腻程序员!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
@PostConstruct
原文地址 @PostConstruct注解好多人以为是Spring提供的。其实是Java自己的注解。 Java中该注解的说明:@PostConstruct该注解被用来修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。 Construc...转载 2020-01-15 20:20:16 · 196 阅读 · 1 评论 -
ExceptionHandler运行机制分析
原文地址 ExceptionHandler是如何触发的 ExceptionHandler是spring里面的一个注解,非常方便去掉try...catch这类冗余难看的代码,有利于代码的整洁和优美。还能统一处理异常,是个非常好的技巧。 下面以我写的一个最简单的工程来说明ExceptionHandle是如何工作的。 一共4个类: 1、springboot的启动类DemoApplication...转载 2020-01-12 14:20:39 · 712 阅读 · 0 评论 -
Collections.emptyList() 和 Collections.EMPTY_LIST的区别
/** * 调用方法list.isEmpty(),list.size()方法,返回值都一致 * Collections.emptyList()返回的是范型的空集合,内部调用的Collections.EMPTY_LIST做范型转换 * Collections.EMPTY_LIST返回的是空集合 * Collec...原创 2020-01-10 10:48:48 · 530 阅读 · 1 评论 -
ReflectionToStringBuilder的使用分析与优化
原文地址 昨天看视频无意间看到这个工具,终于不用重写toString方法了。 相对于toString方法,代码简洁 , 无须任何配置, Model 属性变化 , 无需修改 toString 缺陷:安全性问题 , 反射私有属性值也会暴露 . 为了防止暴露,我们可以重写accept方法,剔除不想暴露的属性。 改进:利用ToStringBuilder弥补(通过 ReflectionToStri...转载 2020-01-10 10:29:15 · 461 阅读 · 0 评论 -
StringUtils在commons-lang3和commons-lang中的区别
Java中的jar包,commons.lang和commons.lang3的区别? 鉴于lang3 不完全兼容之前的版本 所以重开一个路径避免冲突 ,lang3 完全支持1.5以上的特性 StringUtils在commons-lang3和commons-lang中的区别 原文地址 最近经常需要对String做一些判断和处理,于是就用到了Apache提供的StringUtils这个工具类,...转载 2020-01-09 14:29:42 · 3104 阅读 · 0 评论 -
假设字符串类似这样的aba和aab,abc和bca就相等,现在随便给你二组字符串,请编程比较他们看是否相等
public static equals(String s1,String s2){ if (s1.length() != s2.length()) return false; if (s1.equals(s2)) return true; if (s1 == s2) return true; char[] ca1 = s1.toCharArray(); char[] ca2 = s2.t...转载 2020-01-04 13:10:11 · 1271 阅读 · 0 评论 -
用List实现栈和对列
栈实现 栈功能:后进先出,进栈,出栈,返回栈元素; package com.test.thread; import java.util.LinkedList; import java.util.Stack; public class MyStack { /* 声明容器 */ private LinkedList<Object> stack = new Link...转载 2020-01-04 12:47:10 · 204 阅读 · 0 评论 -
判断一个链表是否有环
如何判断一个单链表是否有环,若有环,找出环的入口? 下图是一个有环链表 设置两个链表指针fast, slow,初始值都指向链表头结点,然后两个指针都往后走,不同的是slow每次前进一步,即前进一个节点。fast每次前进两步,如果存在环,两个指针必定相遇。 因为只有存在环的情况,我们才可能出现走的快的指针能再次遇到慢的指针。 并且还有一点就是,若该链表存在环,则在慢指针还没走完一整个环的...转载 2020-01-04 12:06:20 · 142 阅读 · 0 评论 -
两个单链表相交,找出第一个交点
目录 题目 理解 解法 题目 给两个单链表,如何判断两个单链表是否相交?若相交,则找出第一个相交的节点 理解 解这道题之前,我们需要首先明确一个概念: 如果两个单链表有共同的节点,那么从第一个共同节点开始,后面的节点都会重叠,直到链表结束 因为两个链表中有一个共同节点,则这个节点里的指针域指向的下一个节点地址一样,所以下一个节点也会相交,依次类推。所以,若相交,则两个链表呈“Y”...转载 2020-01-04 11:09:26 · 1402 阅读 · 0 评论 -
将数组中最小的数输出<Java>
【题目要求】:编写Java程序,将数组中最小的数输出。 【题目分析】: 思想一:采用冒泡排序由小到大,则最小的数在首位,输出首位即可。 思想二:调用方法 思想三:for循环嵌套if条件句,输出最小值 【编程实现】: 思想一: public class Test2 { public static void main(String[] args) { int ar...转载 2020-01-03 17:07:23 · 638 阅读 · 0 评论 -
HashMap与HashTable
HashMap HashMap底层是一个Entry[]数组;当发生hash冲突的时候,hashMap是采用链表的方式来解决;在对应的数组位置存放链表的头节点;新加入的节点会从头节点加入;超过阀值(默认8),单链表就会转为红黑树,提高检索速度; HashMap扩容的条件是:当size大于threshold时,对HashMap进行扩容(threshold=容量*加载因子)默认加载因子为0.75...转载 2020-01-03 14:00:33 · 140 阅读 · 0 评论 -
==与equals与hashCode
== a==b比较的是两个对象的引用,equals方法默认使用==进行比较; 基本数据类型之间的比较应该用过==,比较的是他们的值; 引用类型用==比较时,比较的是他们在内存中的存放地址;所以,除非是同一个new出来的对象,比较的结果为true,否则为false; 对象是存放在堆中的,栈中存放的是对象的引用(地址),可见“==”是对栈中的值进行比较;如果要比较堆中的对象的内容是否相同,就需...转载 2020-01-03 13:17:31 · 155 阅读 · 0 评论 -
原子操作类AtomicInteger
目录 为什么需要原子操作类 如果使用volatile修饰变量呢 使用AtomicInteger CAS指令 incrementAndGet()方法 JUC包原子类的类型及方法 为什么需要原子操作类 原子操作,是指一个操作是不可分割,不可中断的; 在java中的运算操作,例如自增或自减,若没有进行额外的同步操作,在多线程环境下操作就是线程不安全的;(n++解析为n=n+1,明显这个...转载 2020-01-03 10:36:46 · 197 阅读 · 0 评论 -
多线程
什么情况下需使用多线程 有连续的操作,并耗时较长 为了等待网络或文件响应等,需要耗费大量时间运行 为什么使用多线程 从用户角度,是为了得到更好的系统服务;从服务角度,是为了使任务尽快完成,能更有效的利用系统资源。 什么是线程 一个程序可以同时执行多个任务,通常每个任务就是一个线程。(线程间共享变量) 开启线程方式 实现Runnable接口,或者继承Thread类(通过...转载 2019-12-05 12:00:44 · 156 阅读 · 0 评论 -
Java数据结构
数组 数组是一种连续存储线性结构,元素类型相同,大小相等。通过使用整型索引来访问它们的元素,长度不会改变。 数组的优点: 存取速度快 数组的缺点: 事先必须知道数组的长度 插入删除元素很慢,效率低 空间通常是有限制的 需要大块连续的内存块 链表 n个节点离散分配,彼此通过指针相连,每个节点只有一个前驱节点,每个节点只有一个后续节点,首节点没有前驱节点,尾节点没有后续节点。...转载 2019-12-01 16:03:45 · 102 阅读 · 0 评论 -
Java概念性
面向对象 面向对象是一种编程规范,是基于万物皆对象这一哲学观点。 所谓面向对象就是将我们的程序模块化,对象化,把具体事物的特征属性及动作放到一个类里面来。 在现实生活中,任何物体都可以归类为一类事物的实例。面试对象的编程,是以对象为中心,以消息为驱动 面向过程 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现。 面向对象设计原则 https://b...原创 2019-12-09 00:12:48 · 163 阅读 · 1 评论