java
轻语莫念
这个作者很懒,什么都没留下…
展开
-
List中汉字按照拼音顺序排序
前置条件,要读取Excel中的学校名称,但是不是按照拼音顺序排序的,贼头疼。参考连接:https://www.cnblogs.com/lxcmyf/p/8797612.html需要的依赖: <dependency> <groupId>com.belerweb</groupId> <artifac...原创 2020-03-04 16:12:17 · 457 阅读 · 0 评论 -
Lambda表达式
面向对象的思想: 做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情.函数式编程思想: 只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程Java8引入了Lambda表达式之后,Java也开始支持函数式编程。Lambda表达式不是Java最早使用的,很多语言就支持Lambda表达式,例如:C++,C#,Python,Sc...原创 2019-09-14 16:51:50 · 306 阅读 · 0 评论 -
JDK1.8中Stream流API的使用
Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API。Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。Stream 是 Java8 中处理集合的关键抽象概...原创 2020-02-21 21:59:04 · 800 阅读 · 0 评论 -
经典设计模式--单例模式
单例模式:特点:单例类只能有一个实例 单例类必须自己创建自己的唯一实例 单例类必须给所有其他对象提供这一对象实例单例模式的应用场景:1. Windows的Task Manager(任务管理器)就是很典型的单例模式2. 网站的计数器,一般也是采用单例模式实现,否则难以同步。3. 应用程序的日志应用,一般都何用单例模式实现,这一般是由于共享的日志文件一直处于打开状态,...原创 2019-09-11 20:56:42 · 76 阅读 · 0 评论 -
JVM堆(heap)
概念: 一个JVM实例只存在一个堆内存,堆内存的大小是可以调节的。类加载器读取了类文件后,需要把类、方法、常变量放到堆内存中,保存所有引用类型的真实信息,以方便执行器执行,堆内存分为三部分: 一个JVM实例只存在一个堆内存,堆内存的大小是可以调节的。类加载器读取了类文件后,需要把类、方法、常变量放到堆内存中,保存所有引用类型的真实信息,以方便执行器执行。...原创 2020-01-24 12:03:15 · 177 阅读 · 0 评论 -
JVM体系概述
JVM的位置:jvm是运行在操作系统之上的,他与硬件没有直接的交互JVM体系结构概述类加载器ClassLoader负责加载class文件,class文件在文件开头有特定的文件标示,将class文件字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构并且ClassLoader只负责class文件的加载,至于它是否可以运行,则有Execution Engine决定。类加载...原创 2019-12-22 15:54:46 · 115 阅读 · 0 评论 -
三个售票员卖票(Lock)
三个售票员并发卖票//锁 操作 资源class Tickect { private int m = 30; private Lock lock = new ReentrantLock(); public void buy() { lock.lock(); try { if (m > 0) { ...原创 2019-12-17 21:13:52 · 563 阅读 · 0 评论 -
java的时间类(三种)
1.Date(JDK1.0) new Date() 获取当前系统时间 new Date(long times) 根据毫秒数转化为Date类型对象 方法: date.getTime() 获得1970-1-1凌晨距离date日期的毫秒数Date date=new Date(); System.out.println(da...原创 2019-08-30 21:09:27 · 313 阅读 · 0 评论 -
Collection集合,Map集合
Collection体系结构图collection是这些类的父接口,这里主要说ArrayList,linkedlist,hashset,treeset,linkedhashset,对于集合的操作无非就是几种情况,添加,修改,删除,查询。这不过根据这些实现类的底层存储,效率问题,加上各自的特点,在不同的场景下,使用他们其中相对的综合效率较高的那一个。collection...原创 2019-09-01 10:40:27 · 386 阅读 · 0 评论 -
java的泛型
泛型 --> 应用在不确定的类型上面 泛型是使用 a. 泛型在集合上的应用 1.如果集合中不指定泛型类型,那么默认是Object 2.集合中的泛型是规定当前集合中存储的数据类型 3.右边的泛型要和左边的泛型保持一致(没有兼容这种事情) ...原创 2019-09-03 20:30:36 · 96 阅读 · 0 评论 -
file和IO
File1. File类 理解: File类是java.io包下代表与平台(操作系统)无关的文件和目录(文件夹) 功能: 对文件和目录的操作(新建、删除、改名、获得目录下的内容、文件的大小、文件的各种路径) 访问不到文件的内容2. 构造器(对象如何生成) new File(String pathname); //根据文件或目录的路径去创建...原创 2019-09-09 15:48:08 · 81 阅读 · 0 评论 -
java的反射
用反射机制可以干什么(应用):1.java反射可以获得类名,类加载器,父类,父接口,注解,包名,获得类类型。2.java反射可以获得类的构造方法,成员方法,并动态调用,并且可以调用私有的方法,构造器,属性3.java反射可以获得类的成员变量,并动态设置成员变量的值。4.java反射可以通过类所在的包名,动态地生成一个类的实例。5.当你涉及到给公司写一个小的工具时会到,或者分析框架的...原创 2019-09-11 19:56:06 · 77 阅读 · 0 评论 -
java连接数据库(JDBC,数据连接池)
没有用框架的话用DBUtils加数据库连接池,效率更高JBDC连接数据库的步骤:①注册驱动②获取数据库连接③获得通道对象④操作⑤关闭资源代码示例:PS:createstatement换成prepareStatement,防止sql注入问题,同时提高效率@Test public void update() { Connection conn = nu...原创 2019-09-22 13:40:39 · 122 阅读 · 0 评论 -
DBUtils工具类,模板DAO
在没有用框架的阶段,为什么要使用DBUtils工具类呢?,因为方便啊,用原生JDBC过于痛苦什么事情都要自己干,碎玉我这个暴躁的人来说完全不能忍受啊。DBUtils会自己给你封装的,多好,在没用框架的阶段用这个相对而言,可以轻松一点,用框架的闭嘴,1. 工具类 QueryRunner (模板类) QueryRunner qr=new QueryRunner()...原创 2019-09-22 14:06:21 · 210 阅读 · 0 评论 -
两个线程打印
大致题意:有一个数组中有一组数,要求两个线程奇数线程和偶数线程,偶数线程打印十个后,奇数线程再打印十个,往复到结束public class FuJia4 { @SuppressWarnings("static-access") public static void main(String[] args) { Integer[] input = { 1, 2, 3, 4, 5, 6...原创 2019-09-23 20:08:29 · 161 阅读 · 0 评论 -
常用正则表达式
语法 定义正则:/^$/ PS:在js中 使用正则:test()验证数据整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$只能输入数字:”^[0-9]*$”只能输入n位的数字:”^\d{n}$”只能输入至少n位的数字:”^\d{n,}$”只能输入m~n位的数字:”^\d{m,n}$”只能输入零和...原创 2019-09-26 14:14:36 · 150 阅读 · 0 评论 -
BigInteger和BigDecimal
BigInteger BigInteger(String val) BigInteger add(BigInteger val) BigInteger subtract(BigInteger val) BigInteger multiply(BigInteger val) BigInteger divide(BigInteger val) B...原创 2019-08-28 19:57:09 · 185 阅读 · 0 评论 -
String,StringBuffer,StringBuilder
1. String 特点: a. java.lang.String 构建字符串对象 "aa" "12" "中文" 字符串常量 b. 字符串是常量;它们的值在创建之后不能更改 private final char value[]; c. String类提供了很多非常好用的方法 d. 字...原创 2019-08-28 19:59:48 · 262 阅读 · 0 评论 -
异常(包含自定义异常)
异常:指的是程序在执行过程中,出现非正常的情况,如果不处理最终会导致JVM的非正常停止。(PS:异常不是语法错误,也不是程序的逻辑错误)异常的体系结构:Throwable是异常的根父类,旗下有两个子类一个是java.lang.Error,另一个是java.long.Exception,其中异常时Exception非受检异常:(运行时异常)运行时异常多数是程序员写的BUG,所以要...原创 2019-08-26 19:42:54 · 222 阅读 · 0 评论 -
java的数值类型之间的转换问题
今天在阅读《java核心卷一》的时候看到了数值类型合法转换的图,对上面的图表示怀疑,于是我立刻就去百度了因为为知道肯定是我错了。这是我看的大佬的链接:https://blog.csdn.net/qq_31778159/article/details/79284113long的范围大于doublelong 2^63 4Bfloat 3.4*10^38 4Blong与float的...转载 2019-07-23 19:47:28 · 229 阅读 · 0 评论 -
javaSE中的数据导出到Excel表、javaEE中后台生成Excel文件到浏览器端下载
整个项目中导出数据到.Excel的源码 import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import j...原创 2019-07-17 15:17:59 · 250 阅读 · 0 评论 -
java中trim()方法的用法详解
原文:https://blog.csdn.net/qq_35993946/article/details/86366554trim()的作用是去掉字符串两端的多余的空格,注意,是两端的空格,且无论两端的空格有多少个都会去掉,当然中间的那些空格不会被去掉,如:String s = " a s f g ";String s1 = s.trim();那么s1就是"a s ...转载 2019-07-21 10:58:00 · 322 阅读 · 0 评论 -
简单的堆栈跟踪
首先贴一段java代码package day12.xunlian;import java.util.Scanner;public class StackTranceTest { public static int factorial(int n){ System.out.println("factorial("+n+")"); Throw...原创 2019-07-30 18:45:02 · 183 阅读 · 0 评论 -
Java 代码界 3% 的王者?
(别说了我是那个97%的人,哎,人家还是个孩子啊)来源:CSDN原文:https://blog.csdn.net/qing_gee/article/details/9615181801、原始类型的 float第一题是这样的,代码如下:public class FloatPrimitiveTest { public static void main(String[] ar...转载 2019-07-22 14:16:06 · 93 阅读 · 0 评论 -
java中的函数调用的数据传递方式
1.首先Java中有基本数据类型和引用数据类型,这两种方式,调用的方式各不相同, (1)基本数据类型: 当函数传递基本数据类型时会在栈区创建一个相同的栈,使得在其他函数中的数据的改变并不影响传递之前的数据,这种传递方式为值传递 (2)引用数据类型:先说引用数据类型都包括哪些(类class,接口interface,数组array,String)...原创 2019-07-22 15:04:42 · 179 阅读 · 0 评论 -
formData多图片上传(easyui+ssm)
这个组件我是参考的https://blog.csdn.net/royal1235/article/details/83717930#commentsedit 他的博客,但是后期又出现了一点问题,我跟原博主说了,他更改了他的代码,我也把我的放出来(调皮)<!-- 添加图片弹窗 --><div id="add-photos-dialog" class="easyui-di...转载 2019-07-22 15:31:45 · 462 阅读 · 0 评论 -
java的基本类型转换
1、自动类型转换(1)当把存储范围小的数据(变量,常数,表达式的结果)赋值给存储范围大的变量时,会发生自动类型转换byte->short->int->long->float->double char->(2)当byte与byte, short与short,char与char或者他们三个的混合运算,只要运算,自动升级为int(3)当...原创 2019-08-09 19:48:57 · 161 阅读 · 0 评论 -
位运算
在说位运算之前,先说一下二进制的特殊问题:计算机数据的存储使用二进制补码形式存储,并且最高位是符号位,1是负数,0是正数。规定:正数的补码与反码、原码一样,称为三码合一;负数的补码与反码、原码不一样:负数的原码:把十进制转为二进制,然后最高位设置为1负数的反码:在原码的基础上,最高位不变,其余位取反(0变1,1变0)负数的补码:反码+1例如:byte类型(1个字节...原创 2019-08-09 19:57:53 · 414 阅读 · 0 评论 -
float和long的数据范围问题
float:四个字节。long四个字节,但是float的存储范围比long的存储范围要大。但是在我阅读《java核心卷一》的时候,long转float时会有精度损失问题,即long转float是有可能丢失末尾的几位有效数字。java的精度问题有两个类可以解决:BigInteger(大整型)和BigDecimal(大浮点型)https://mp.csdn.net/postedit/100...原创 2019-08-09 20:14:18 · 2701 阅读 · 1 评论 -
抽象,接口
面向对象的基本特征:封装、继承、多态面向对象的特征:封装、继承、多态、抽象什么情况下会用到抽象? 我们要声明圆类,矩形类等类型,发现这些子类中有共同的特征,需要提取到公共父类中,但是在公共父类中又无法给出具体的方法的实现,那么这样的方法我们声明为抽象方法。当一个类包含了抽象方法,这个类必须也是抽象的。抽象类的特点 (1)抽象类是不能直接创建对象 (2)一个类包含了抽象方...原创 2019-08-23 20:42:40 · 74 阅读 · 0 评论 -
java的部分关键字
(毕竟是自己写的欢迎来纠错)JDK,JRE,JVMJDK:Java开发工具包(Java Development Kit),给开发人员用的。JRE:Java运行环境(Java Runtime Environment),运行Java程序用的。JVM:Java虚拟机(JVM Java Virtual Machine),对于不同的平台,有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的...原创 2019-08-23 21:08:49 · 112 阅读 · 0 评论 -
java类和实例的初始化问题
先上一个题:public class Test08 { public static void main(String[] args) { Zi zi = new Zi(); }}class Fu{ private static int i = getNum("(1)i"); private int j = getNum("(2)j"); static{ print("(...原创 2019-08-20 20:55:06 · 152 阅读 · 0 评论 -
内部类(匿名内部类、静态内部类、局部内部类、非静态内部类、)
内部类都可以继承父类和实现多个接口(不过一般不提倡实现多层的内部类)1.匿名内部类: 匿名:没有名字,即这里说的是类没有名字 内部类: 在另一个类中声明的类,称为内部类。 匿名对象:对象没名字 1、匿名内部类的语法格式 我们声明一个类的目的,是为了创建对象,然后通过对象调用方法什么的。 那么这里这个类都没有名...原创 2019-08-25 10:19:47 · 150 阅读 · 0 评论 -
继承,多态,重写,重载
封装这里我就不说了很容易理解的(万物皆可对象,封装就是将具体事物的属性和动作等封装成类,)继承 1、作用 (1)代码的复用 (2)代码的扩展 2、什么情况下需要继承? (1)当我们编写新的类型时,发现已有的类型中有我们需要的事物的全部特征(属性、方法),这个时候就可以考虑使用继承。 并且我们要求新的类型是旧的这个类型的子集,即is-a的关系。 例如:...原创 2019-08-21 20:35:44 · 186 阅读 · 0 评论