![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 71
sunzixiao
这个作者很懒,什么都没留下…
展开
-
idea修改背景为护眼背景模式、淡黄色、淡绿色等,内附多张纯色背景图片供使用
idea默认的黑色比较酷,但是晚上看比较费眼,自带的白色看的比较清楚,但是对于一个程序员来说,一天十几个小时都要对着电脑,看着还是眼睛还是挺累的,那么来给你的idea换个护眼的背景吧,像淡黄色、淡绿色之类的。原创 2023-02-27 17:41:13 · 6387 阅读 · 7 评论 -
java获取当前时间的方法:LocalDateTime、Date、Calendar,以及三者的比较
在开发时我们经常需要获取当前时间或者对时间进项处理(在某个时间的基础上增加或者减少),java获取时间的方法比较多,有LocalDateTime、Date、Calendar等,其中LocalDateTime是java8的新特性,相比较其它两个而言,LocalDateTime有很多优势,这也是最推荐使用的方法。下面我们先来介绍一个LocalDateTime的用法,然后介绍Date、Calendar的用法,最后比较它们的区别。原创 2023-02-22 22:22:03 · 6875 阅读 · 0 评论 -
java利用Executors定期定时执行某个程序或者任务
有时我们需要定期执行某个程序,比如隔一段时间备份一下日志文件,查询或者更新某个数据等等,这时就需要写一个定时执行的功能。原创 2023-02-21 20:59:05 · 301 阅读 · 0 评论 -
使用DateTimeFormatter解决SimpleDateFormat在多线程时出现的java.lang.NumberFormatException问题
在多线程情况下使用SimpleDateFormat进行日期转换时出现java.lang.NumberFormatException问题。原创 2023-02-20 17:01:41 · 348 阅读 · 0 评论 -
java对string字符串进行处理:查找字符串、比较字符串、拼接字符串
本文介绍了一些对字符串处理的常用方法,在实际开发中还是会经常会遇到对字符串进行处理的需求,这样会使我们的开发更为高效。原创 2022-11-16 11:49:16 · 1101 阅读 · 0 评论 -
java中的slf4j、log4j和logback的区别与联系以及使用方法
在java开发,我们会需要记录程序在运行过程中的一些信息,特别是错误信息,这样方便我们寻找错误,把日志信息写到文件当中,这样方便我们查找,特别是将程序打成jar包布置到服务器上,将日志记录到文件中必不可少,这时就需要使用一些日志框架。下面就来了解几个使用比较多的日志框架以及它们的用法。slf4j(Simple Logging Facade for Java)是一系列的日志接口,而log4j和logback是具体实现了的日志框架。...原创 2022-08-09 23:34:17 · 4466 阅读 · 0 评论 -
大话设计模式——第二章:商场促销策略模式
做一个商场收银软件,营业员根据客户所购买商品的单价和数量,向顾客收费。面向对象编程并不是类越多越好,类得划分是为了封装,但分类得基础是抽象,具有相同属性和功能得对象得抽象集合才是类。在开始编程时,我们。...原创 2022-08-03 23:23:06 · 350 阅读 · 0 评论 -
大话设计模式——第一章:简单工厂模式以及UML类图介绍
所有编程者都会有这样的问题,就是碰到问题就直觉地用计算机能够理解的逻辑来描述和表达待解决的问题及具体过程。其实是用计算机的方式去思考,比如这个计算器程序,先要求输入两个数和运算符号,然后根据运算符号判断选择如何运算,得到结果,这本身没有错,但是这样的思维却使我们的程序只为满足实现当前的需求,不容易维护和扩展,更不容易复用。使用面向对象的编程思想,通过封装、继承、多态,把程序的耦合度降到最低,传统印刷术的问题就在于将所有的字都刻在同一版面上造成耦合度太高,用设计模式会使得程序更加灵活,容易修改容易复用。...原创 2022-08-03 14:27:23 · 339 阅读 · 0 评论 -
UML类图详解
一个矩形框代表一个类,里面如果写了interface则表示一个接口。原创 2022-08-03 14:21:51 · 86 阅读 · 0 评论 -
重组函数:将部分功能提炼为一个独立的函数,以便之后可被其他函数调用
在程序中,我们会以一个临时变量来保存某一表达式的运算结果,现在我们将这个表达式提炼到一个独立函数,将这个临时变量的所有【被引用】替换为对新函数的调用,新函数可被其他函数使用。我们常常使用临时变量保存循环中的累加信息,这种情况下,整个循环都可以被提炼为一个独立的函数,这也使原本的函数可以少掉几行扰人的循环码。有时候我们可能会用单一的循环累加好几个值,例如这一篇文章所说链接对list数组的每条数据进行条件判断,拼接之后进行发送或者返回处理https。...原创 2022-07-28 23:47:59 · 284 阅读 · 0 评论 -
对list数组的每条数据进行条件判断,拼接之后进行发送或者返回处理
场景有时候,我们需要对一个list数组里面的每条数据进行判断,比如从某个服务上或者页面传过来一条数组数据,我们将其解析成list数组,然后对其中每条数据进行非空判断,在判断完每一条数据之后统一返回。...原创 2022-07-28 10:29:08 · 533 阅读 · 0 评论 -
Java利用fastjson解析复杂嵌套json字符串、json数组;json字符串转Java对象,json数组转list数组
在开发中经常需要将json字符串转换为java对象或者list数组,这样方便我们来使用这些数据,下面就来介绍一下怎样将json字符串和json数组转换为Java对象或者list数组。在大括号{…}中书写,包含多个key/value(键/值)对,key必须是字符串,value可以是合法的JSON数据类型(字符串,数字,对象,数组,布尔值或null)例如一个最简单的没有嵌套的JSON对象{“name”18,“site”null}转换大体上分为两种https。......原创 2022-07-19 10:38:38 · 20861 阅读 · 4 评论 -
多线程,线程的创建和启动,Thread、Runnable、Callable的用法
大部分时候我们都作者单线程编程,程序都只有一条顺序执行流从main方法开始执行,一次向下执行每行代码。但实际情况是,单线程的程序往往功能非常有限,例如我们要开发一个煎蛋的服务器程序,这个服务器程序需要向不同的客户端提供服务,不同客户端之间互不干扰,这就需要多线程。多线程程序可以包括多个顺序执行流,多个顺序流之间互不干扰。Java提供了非常优秀的多线程支持,程序可以通过非常简单的方式来启动多线程。进程就是一个应用程序(一个进程是一个软件)线程是一个进程中的执行场景/执行单元阿里巴巴进程马云。...原创 2022-07-16 23:44:11 · 796 阅读 · 1 评论 -
详解java的主方法main方法:public static void main(String[] args){}
因为计算机没有思考能力,它只能执行用户交给它的任务,上面的程序中我们没有给args数组设定参数值,那么JVM就不知道args数组的元素,所以JVM将args数组设置成一个长度为0的数组。改用如下命令运行上面的程序可以看出,如果运行Java程序时在类名后面跟上一个或多个字符串(多个字符串用空格隔开,一个引号里面算一个字符串),JVM就会把这些字符串依次赋值给args数组。void返回值主方法被JVM调用,该主方法的返回值将返回给JVM,这没有任何意义,因此返回值使用void。那么这个方法是如何起作用的呢?..原创 2022-07-16 09:52:04 · 6810 阅读 · 0 评论 -
接口和抽象类的区别与联系
接口里只能定义静态常量Field(成员变量),不能定义普通Field;抽象类里既可以定义普通Filed,也可以定义静态常量Field。接口使用的比抽象类多,一般抽象类使用的少。接口一般都是对“行为”的抽象。...原创 2022-07-15 16:33:43 · 1165 阅读 · 0 评论 -
Java中的基本类型的类型转换,byte、short、int、long、float、double、Boolean、char
Java中不同的基本类型的值经常要进行相互转换,在Java中有8种基本数据类型,一般Boolean的值为true或false,不参与数据类型转换,下面就来说说另外7种基本数据类型的相互转换。整数类型有:byte(8位),short(16位),int(32位),long(64位)long的表示需要后面加L,不加L会默认当作int来处理,但是long a = 12这样定义不会出错,因为此时发生了int——>long的自动类型转换,此时的a是long类型,值为12.2147483647是int的最大值,如果定义i原创 2022-07-11 23:35:48 · 2507 阅读 · 0 评论 -
解决更新数据库时时间字段只显示年月日,不显示时分秒,mysql中date和datetime的区别
最近在操作数据库时发现,插入数据或者更新数据时,使用的是MybatisPlus的自动填充时间:时间字段只显示年月日不显示时分秒。刚开始以为是时间得格式不对,试了好几种方法将时间转换为标准的YYYY-MM-DD HH:mm:ss格式,也试了使用时间戳格式,都不行。最后发现有一个表中的字段修改时确实是有时分秒,但是另外一个没有,于是查看了这两个字段的类型,发现有时分秒的类型是datetime,没有时分秒的类型是date,于是去查询了一下这两个类型的区别。Date显示格式:YYYY-MM-DD,只显示年月日D原创 2022-07-08 09:25:04 · 5755 阅读 · 0 评论 -
return、break和continue的区别及使用情况
在一段代码中,return、break和continue都有结束某个执行过程的作用,那么这三者到底有何区别呢?return:在方法内都可以使用,当一个方法执行到return语句时,这个方法将被结束,执行权回到方法调用处。要注意,return不是专门用于结束循环,return的功能是结束一个方法。break :用于循环语句(java中有三种循环:for、while、do……while)和switch语句,是用来跳出循环,结束整个循环过程。要注意:break只能跳出一层循环,如果是嵌套循环,break只能跳原创 2022-06-28 15:14:50 · 899 阅读 · 0 评论 -
java三大变量——静态变量、实例变量、局部变量
变量是内存当中存储数据最基本的单元,将数据(字面量)放到内存当中,给这块内存空间起一个名字,这就是变量。变量就是内存当中的一块空间,这块空间有名字、有类型、有值,这也是变量必须具备的三要素。java中的变量可分为三类:局部变量、静态变量、实例变量。首先,变量根据声明的位置不同可以分为:局部变量和成员变量。在方法体当中声明的变量以及方法的每一个参数都是局部变量。在方法体外,类体内声明的变量称为成员变量,成员变量声明时如果使用 static 关键字修饰的为静态成员变量(简称静态变量),如果没有 static原创 2022-06-27 17:13:50 · 6310 阅读 · 4 评论 -
String str = null; String str =““;String str = new String();三者的区别与联系
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。String str =null :只是声明了对象的引用,对象未进行实例化,仅仅是把栈内存的String引用指向了一个null;String str = “”:str是一个实例,并把对象放到堆内存里。有自己的对象空间。String str = new String():对象分配了指向new String()所创建的内存空间,即对这个对象str进行了实例化。显示结果如下:经测试,ne原创 2022-06-23 17:15:07 · 523 阅读 · 0 评论 -
map和json数组以及JSON对象和的区别以及相互转换
在开发中经常需要存储或者传递一些数据,其中用的比较多的就是map和json,这两者之间长的非常像,都属于key和value的形式,二者有何区别与联系?可以相互转换吗?下面就来介绍一下map和json的区别以及二者相互转换的方法。map是K-V类型的数据,map有多种实现类,主要有hashmap、linkedhashmap、treemap等。map实际上是有一个个entry对象组成,entry对象包含key、value、next、hash值,我们可以往key和value中put值,next指向当前entry原创 2022-06-22 23:25:54 · 9136 阅读 · 0 评论 -
java中long和string互转
这里给出三种转换方式:这个方法很好用,简单方便这里需注意valueOf()括号里的值不能为空,如果为空则会报错。不只是Long可以使用这个方法,包装类型都可以使用。Byte,Integer,Short,Long,Boolean,Character,Float,Double等这些都可以调用toString方法来转换成string类型这里需要注意的是,要转换的string类型的数据中只包含数字2、利用Long的ValueOf方法,返回的是long型: 需要将string转换成其原创 2022-06-13 19:15:12 · 31791 阅读 · 0 评论