程序猿洞晓
java启动命令详解 java启动命令详解
服务上到生产或者测试环境的时候,一般都是使用centos系统,此时就需要通过命令在启动运行。这篇博客就是用来记录这个命令和命令的小门道。
2023-04-13
ArrayList源码(二):扩容和移位、删除元素详解 ArrayList源码(二):扩容和移位、删除元素详解
ArrayList是最常用的集合容器之一,也是面试的时候必问的一个知识点,下面来一起看一下源码,了解一下ArrayList扩容、移位、删除元素的操作细节。
2022-04-07
ArrayList源码(一):java1.8源码之ArrayList源码解读 ArrayList源码(一):java1.8源码之ArrayList源码解读
List是大小可变数组的实现。实现了所有可选列表操作,并允许包括null在内的所有元素。除了实现List接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。
2022-04-06
Linux环境JDK安装 Linux环境JDK安装
Linux环境安装JDK很简单,但是环境变量的配置总是忘,如果直接敲太累,网上查,时间成本高(各种配置方式,有的可能还是错的)。还是自己做一个笔记吧!
2020-10-10
字符串split操作到底有多少坑 字符串split操作到底有多少坑
长字符串切分,取其中元素封装或者将封装信息组合成长字符串都是常规操作,但是这种长字符串往往是不可控的,如一个长字符串就是由一个元素组成,或者存在空字符串的元素,看似这并没有什么问题,但是使用不同工具类的split方法进行切分结果是完全不同的。不知道你是否遇到这样的坑,下面一起来看看。
2019-07-27
轻松了解jdk8之lambda表达式常用API(持续更新……) 轻松了解jdk8之lambda表达式常用API(持续更新……)
这两年,基本所有的公司都由之前的JDK7转战JDK8,还记得上次去饿了么面试给的面试题,第一题就是用lambda实现一个功能,当时对lambda表达式基本是零了解,然后……。现在随着慢慢的使用,也慢慢了解lambda表达式真的是一个好东西,可以大大的简化以前的代码,下面在说常用lambda表达式的时候,会附上对应之前需要的代码量。相信你也会喜欢上它的。
2019-04-30
Java输入和输出流关闭的顺序和关闭的姿势对比理解 Java输入和输出流关闭的顺序和关闭的姿势对比理解
Java的流操作在实际应用中使用的很多,但是流的关闭顺序到底有没有要求,关闭流的顺序和节点流与处理流有什么关系,输出流和输入流又有什么区别,然后就是关闭流可以通过哪几种方式。这篇文章将会和大家讨论一下。……。整个篇幅说了节点流和处理流的区别,然后根据输出流和输入流讨论流的关闭顺序问题,然后就是流不同的关闭姿势说明,最后比较流不同关闭姿势的优缺点。
2018-10-25
拼接字符串String、StringBuilder、StringBuffer你用对了吗 拼接字符串String、StringBuilder、StringBuffer你用对了吗
字符串拼接,很简单的一个操作,JDK给出了几种不同的拼接方法,还提供了对应封装类。早在JDK1.0的时候就提供了StringBuffer这个类用来做字符串的拼接,为了多线程下的线程安全问题,在StringBuffer类中的方法上都加了synchronized锁,这种考虑是没有问题的。后续为了提高单线程下(不存在线程安全问题)提……
2018-09-02
http基础知识点了解一下 http基础知识点了解一下
在 OSI 七层模型中,HTTP协议位于最顶层的应用层中。通过浏览器访问网页就直接使用了 HTTP 协议。使用 HTTP 协议时,客户端首先与服务端的 80 端口建立一个 TCP 连接,然后在这个连接的基础上进行请求和应答,以及数据的交换。HTTP 有两个常用版本,分别是 1.0 和 1.1。主要区别在于 HTTP 1.0 中……
2018-08-13
java基础位运算基本原理分析 java基础位运算基本原理分析
位运算是编程语言的基础,在看源码的时候会看到很多位运算代码,但是在项目代码中很少会看到位运算。因为应用代码中,有很多判断和计算都可以直接用数值的判断和计算完成,没有必要去用位运算,以至于这些基础的东西慢慢用的越来越少,慢慢也就忘了。导致的一个结果就是看代码很费力,因为大量的位运算逻辑,看不懂。作为程序员感觉数据位运算是非常必要……
2018-06-01