![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础知识
文章平均质量分 64
关于java基础的一些知识点
leo825...
越努力越幸运
展开
-
Lambda使用——Stream流合并、分组内对象数据合并
最终实现的效果是返回一个最终的list,里面的每一个实体值是上面所有字段合并后的值(provinceId、field1、field2、field3、field4、field5、field6、field7、field8、field9)A接口返回List里面有值的的字段为:provinceId、field1、field2、field3。B接口返回List里面有值的的字段为:provinceId、field4、field5、field6。数据出自许多接口数据,需要将几个接口数据根据省份id进行分组合并。原创 2022-11-04 17:46:03 · 3359 阅读 · 0 评论 -
通过java的System.getProperty能获取哪些值?
通过java的System.getProperty能获取哪些值?本文列举了配置参数供参考。原创 2022-06-08 12:47:32 · 351 阅读 · 0 评论 -
JDK8新的日期类型LocalDate
文章目录简介实战测试java.time类简介测试其他常用API简介JDK8以前都是通过java.util.Date与 SimpleDateFormatter格式化时间获得时间,但是这些都不是线程安全的,JDK8带给我们新的获取日期的方式。实战测试java.time类简介Date和time做下区分,Date(日期)的单位是年月日。time(时间)的单位是时分秒类描述Instant时间戳(瞬时时间,带时区)LocalDate日期(比如:2018-09-24,不带时区)原创 2022-05-10 16:54:24 · 518 阅读 · 0 评论 -
Lambda使用——JDK8新特性
文章目录Lambda 简介Lambda 表达式Lambda 常用测试Lambda 简介Lambda表达式是JDK8的新特性,可以取代大部分的匿名内部类,写出更简洁更优雅的Java代码,同时JDK也提供了大量的内置函数式接口供我们使用,使得Lambda表达式运用更加方便和高效。Lambda 表达式语法形式为 () -> {},其中 () 用来描述参数列表,{} 用来描述方法体,-> 为 lambda运算符 ,读作(goes to)。能够接收Lambda表达式的参数类型,是一个只包含一个方原创 2021-09-28 18:16:23 · 537 阅读 · 0 评论 -
Java读写文件的几种方式
前言Java中读写文件是非常基本的IO操作了,现在总结一下常见的用法。首先总结一下读取文件的步骤:根据文件的路径获取到文件File对象将File对象转换成输入流InputStream将输入流读出来,读的时候Java提供了相应的Reader类文件流读完之后一定要关闭。注意:本文文件的字符集都是UTF-8,如果需要字符集转换的请自行处理。一:字节流读取方式一般字节流读取方式用在读取图片或者固定格式文件的方式。如果是一次读取一个字节方式可以用如下方法: /** * 以字原创 2020-07-11 18:19:01 · 4752 阅读 · 0 评论 -
BlockingQueue常用方法add、off、put、take、poll使用说明
1.BlockingQueue的定义首先将BlockingQueue提供的方法的含义解释如下:import java.util.Collection;import java.util.Queue;import java.util.concurrent.TimeUnit;public interface BlockingQueue<E> extends Queue<E> { /** * 1.在不违反容量限制的情况下将指定元素插入队列,成功则立即返回true原创 2020-06-18 23:08:19 · 5496 阅读 · 2 评论 -
java中的“&”、“|”、“^”、“~”运算符怎么用?
文章目录问题:位运算符的用法&运算符|运算符^运算符~运算符问题:java源码中的位运算是如何使用的?位运算符的用法&运算符&是AND运算符,是一种位运算符。有0为0,全1为11&1=1;1&0=0;0&1=0;0&0=0; /** * &是AND运算符,是一种位运算符。有0为0,全1为1 * 运算规则如下: * 1&1=1; * 1&0=0; *原创 2020-06-13 13:11:34 · 9778 阅读 · 2 评论 -
Java标签Label,如何不使用continue和break跳出循环
文章目录前言单层循环双层循环多层循环总结前言今天看同事代码的时候看到使用label跳出循环的方式甚感惊讶,java真的是博大精深,赶紧总结一下用法。单层循环使用单层循环进行测试,测试代码如下: /** * 使用单层for循环测试 */ public static void labelTest01() { System.out.println("---------使用单层for循环结合break跳出循环---------"); for原创 2020-05-22 15:37:06 · 717 阅读 · 0 评论 -
Java的自动装箱与自动拆箱
一:什么是自动装箱拆箱装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。java中需要装箱拆箱的类型如下:基本数据类型包装器类型int(4字节)Integerbyte(1字节)Byteshort(2字节)Shortlong(8字节)Longfloat(4字节)Floatdouble(8字节)Doublechar(2字节)Characterboolean(未定)Boolean二:原创 2020-05-11 15:58:42 · 302 阅读 · 0 评论 -
BigDecimal的使用说明
文章目录前言BigDecimal的构造方法BigDecimal的舍入模式BigDecimal计算数字的工具类前言问:为什么使用BigDecimal计算浮点型数据?浮点数没有办法是用二进制进行精确表示。我们的CPU表示浮点数由两个部分组成:指数和尾数,这样的表示方法一般都会失去一定的精确度,有些浮点数运算也会产生一定的误差。因此在大多数的商业计算中,一般采用java.math.BigDeci...原创 2020-04-29 14:55:20 · 183 阅读 · 0 评论 -
如何理解java中String的不可变性
问题为什么大家都在说String是不可变的?String类的声明public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage. */ priva...原创 2020-04-23 19:43:44 · 4348 阅读 · 2 评论 -
java处理日期的工具类DateUtil
java中处理日期的工具类DateUtilpackage com.leo.demo.othertest;import org.slf4j.LoggerFactory;import java.sql.Timestamp;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDa...原创 2020-04-21 23:59:03 · 1173 阅读 · 0 评论 -
java操作字符串的工具类StringUtil
依赖引入 <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> ...原创 2020-04-21 22:50:43 · 1473 阅读 · 0 评论 -
文件操作工具类FileUtil
分享一个文件处理的工具类,依赖如下: <dependency> <groupId>org.apache.ant</groupId> <artifactId>ant</artifactId> <version>1.10.5</versi...原创 2020-04-21 22:19:42 · 1208 阅读 · 0 评论 -
java程序中date类型比较大小总结
前言工作中遇到时间的比较问题,这里提供几种常用的Date类型数据比较大小方式。compareTo()方法before()方法after()方法getTime()方法1、 compareTo方法 /** * 时间比较方法compareTo * 如果的d1比d2 大 结果=1 * 如果的d1比d2 等 结果=0 * 如果的d1比d2 小 ...原创 2020-04-21 09:30:40 · 3137 阅读 · 0 评论 -
java抽象类到底能不能够实例化?
文章目录问题测试总结问题什么是抽象类?抽象类能不能被实例化?测试创建一个AbstractFruit抽象类public abstract class AbstractFruit { public AbstractFruit(){ System.out.println("我是Fruit的抽象类,我被实例化了"); } public abstract v...原创 2020-03-07 16:31:58 · 8972 阅读 · 5 评论 -
Json数组列表中的数据分组排序、组内排序
问题描述现在有一个用户信息数组,用户信息都在这个数组里,数组中有组号也有排序,现在需要将这些元素按照组号分组并且排序,同时组内元素也按照排序字段排序?示例json数组,分组排序之前[{ "userId": "7", "userName": "neo1", "groupNo": "3", "sortNum": "2"},{ "userId": "11", "userName":...原创 2020-03-06 10:54:58 · 2608 阅读 · 3 评论 -
java将数组元素倒置(反转)的方法?我只想到了5种,有其他方式欢迎补充
题目将字符串数组[“1”, “2”, “3”, “4”, “5”, “6”]倒置,为[“6”,“5”,“4”,“3”,“2”,“1”]。方法一使用java中list的倒置函数,具体的实现如下: /** * 使用Collections.reverse来倒置数组 * * @param strArray 原来的字符串数组 * @return ...原创 2020-03-04 15:31:04 · 13853 阅读 · 0 评论 -
java面向对象三大特性:封装、继承、多态——举例说明
概念封装:封装就是将客观的事物抽象成类,类中存在属于这个类的属性和方法。继承:继承就是把父对象继承过来,这样子类就存在了父类的操作方法,java是单继承,就是只能继承一个父对象。多态:多态就是程序中允许出现重名现象,java实现多态的方式有方法重载和成员变量覆盖两种形式。前期准备首先定一个Fruit对象,里面封装了一个getName方法class Fruit { static ...原创 2020-03-03 15:13:35 · 2014 阅读 · 0 评论 -
什么是反射?反射的用法?实例说明。
文章目录什么是反射?具体方法介绍getFields方法getDeclaredFields方法getMethods方法getDeclaredMethods方法invoke方法什么是反射?生物学:反射是机体对内在或外在刺激有规律的反映。java反射:官方解释是程序在运行状态中,对于任意一个类,都可以知道这个类所有属性和方法,对于任意一个对象都能够调用他的任意方法和属性。具体方法介绍首先定一个...原创 2020-03-03 12:16:58 · 722 阅读 · 0 评论 -
遍历Map的几种方式以及性能小结
文章目录说明第一种方式:遍历Map的entry的方式第二种方式:使用迭代器遍历Map的entry的方式第三种方式:遍历Map的key值的方式第四种方式:使用迭代器的遍历key方式测试代码以及日志总结说明平时都会用到Map的遍历,索性一次总结一下,省的以后再查来查去了。第一种方式:遍历Map的entry的方式 /** * 第一种方式:遍历Map的entry的方式 *...原创 2020-03-03 00:10:39 · 1003 阅读 · 0 评论 -
跨年过程中因日期格式化引发的生产故障:格式化方式YYYYMMdd和yyyyMMdd的区别
文章目录故障背景故障分析故障重现解释总结故障背景某公司进行一年一度的跨年上线工作,在2018年的12月30号上午忽然接到保障业务无法运行,而且影响全国业务。故障分析第一步:因为近期没有业务上线活动,首先排除因上线因此引起的故障。第二步:分析业务日志。发现业务中报错的原因是没有查到业务表中没有查询到前期存的业务日志。第三步:查询前期存表操作,看看是什么原因导致业务数据没有存到数据库中。然...原创 2020-03-01 16:39:18 · 1949 阅读 · 0 评论 -
简单示例立马搞懂Java日期格式中yyyy-MM-dd HH:mm:ss和YYYY-MM-dd hh:mm:ss的区别
word is weak,show me your code啥也不说,上代码 /** * 测试两种不同的格式化 */ public static void dateFormateTest() { String formate1 = "yyyy-MM-dd HH:mm:ss"; //注意这里的小时用的是hh Str...原创 2020-03-01 14:57:16 · 2090 阅读 · 1 评论 -
java位于算——一个测试搞懂位运算
说明我们平时在看JDK源码的过程中会看到开发者会大量的使用移位运算符,那么移位运算是怎么计算的呢?通过下文的测试代码就可以知道了。测试代码package com.leo.demo.othertest;/** * @ClassName: ByteDemoTest * @Description: 关于位运算的测试 * <p> * 移位运算符 * 把整数的二进制位进行左移...原创 2020-03-01 14:38:14 · 564 阅读 · 0 评论 -
Java自定义注解Annotation的实现原理
什么是注解? 对于很多初次接触的开发者来说应该都有这个疑问?Annontation是Java5开始引入的新特征,中文名称叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且供指定的工具或框架使用。Annontatio...原创 2019-06-02 13:04:46 · 631 阅读 · 0 评论 -
为什么0的补码形式只有一种?
补码的存在是为了变减法为加法,简化了计算过程,即硬件的设计难度。首先要知道两个零是怎么来的,0包括+0和-0,在原码和反码中根据其计算公式,针对于0原码有两种表示形式:+0:0000 0000-0: 1000 0000一个数如果为正,则它的原码、反码、补码相同。一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1。为了简单起见,我们用1个字节来表示一个整数。0的补码表...原创 2019-10-22 10:10:46 · 24757 阅读 · 13 评论 -
java常用的排序算法的思想以及实现
java中常用的排序算法的思想以及实现 由于时间上的原因没有计算时间复杂度,以后有时间补上,或者大家有兴趣的可以自己算算package com.sgcc.cn;import java.util.Arrays;/** * 插入排序:直接插入排序、二分法插入排序、希尔排序。 * * 选择排序:简单选择排序、堆排序。 * * 交换排序:冒泡排序、快速排序。 * * 归并排序 *原创 2016-06-28 15:41:11 · 318 阅读 · 0 评论 -
java常用的发送http请求的工具方法
java常用的HttpURLConnection 方式发送http请求的工具方法 需要的jar包有jsp-api.jar 、servlet-api.jar 、dom4j.jarpackage cn.geobeans.fwzx.util;import javax.servlet.http.HttpServletRequest;import java.io.BufferedReader;impor原创 2016-06-28 12:55:25 · 525 阅读 · 0 评论 -
java中改变字符串编码
java中改变字符串编码经常因为字符编码的问题而去网上搜一些改变字符编码的东西,很麻烦,这次总结了一下比较全的改变字符编码的方法以供参考。代码如下:代码块import java.io.UnsupportedEncodingException;public class CharsetUtil { /** 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块 */原创 2015-12-14 17:56:06 · 964 阅读 · 0 评论