随笔分类 -  java

摘要:1.java的nio采用的是多路复用模型。以下是对各个io模型的简介。 -同步阻塞IO模型:首先,解释一下阻塞与非阻塞。阻塞IO指的是需要内核IO操作彻底完成后才返回到用户空间执行用户程序的操作指令。“阻塞”指的是用户程序(发起IO请求的进程或者线程)的执行状态。可以说传统的IO模型都是阻塞IO模型 阅读全文
posted @ 2022-05-11 16:25 ~~mr.li~~ 阅读(327) 评论(0) 推荐(0) 编辑
摘要:google提供的Gson使json直接转对应的java类非常好用,但前提是该json的属性类型,结构不变才行,若是那种属性一会int一会String的情况,那么将不适用于该方式,只能通过alibaba的JSONObject一个一个按照属性名取。 package com.cjhd.fruit.dat 阅读全文
posted @ 2022-05-06 10:51 ~~mr.li~~ 阅读(1776) 评论(0) 推荐(0) 编辑
摘要:进程:是开辟运行程序空间环境的,系统进行资源分配和调度的基本单位。一个应用在启动时会像电脑申请一块儿内存以便运行自己的程序,内存中有堆有栈有方法区,用来储存资源。 线程:是用来执行程序命令的,所有线程可共享所属进程资源,线程是依赖进程存在的,无法独立存在。一个进程下允许存在N条线程,线程的创建和销毁 阅读全文
posted @ 2021-12-10 16:28 ~~mr.li~~ 阅读(42) 评论(0) 推荐(0) 编辑
摘要:lambda表达式就是函数传递。核心思想是:以参数的形式去实现函数式接口,说直白点就是要实现的接口的实现代码可以直接写在参数中。和匿名内部类非常像,功能也一样。对于只有一个抽象方法的接口,需要这种接口的对象时,就可以提供一个lambda表达式。这种接口称为函数式接口(functional inter 阅读全文
posted @ 2021-11-16 18:43 ~~mr.li~~ 阅读(51) 评论(0) 推荐(0) 编辑
摘要:java8: .sorted(Comparator.comparing(BattlePassLevelConf.BattlePassLevel :: getLevel).reversed()) List流反序:321 .sorted(Comparator.comparing(BattlePassLe 阅读全文
posted @ 2021-03-29 20:12 ~~mr.li~~ 阅读(267) 评论(0) 推荐(0) 编辑
摘要:程序在计算机上的运行流程:定义函数(可执行程序) -> 编译器编译成机器指令 -> 保存到磁盘(可执行程序) -> 由磁盘上的可执行程序加载到内存/调用地址存入pc寄存器 -> cpu会从Pc寄存器上取出内存中程序的地址,然后依次执行。一般是逐行执行,PC寄存器每次“索引自增1”,当cpu需要跳转执 阅读全文
posted @ 2021-03-03 21:30 ~~mr.li~~ 阅读(63) 评论(0) 推荐(0) 编辑
摘要:1.Math.random():获取指定范围内的随机数,速度较快准确率还可以。 //获取0 - 2之间的随机数,含头不含尾 int i = (int) 0 + (int) (Math.random() * (2 - 0)); 2.new Random方式:以流的方式获取随机数,较慢 //获取0 - 阅读全文
posted @ 2021-02-26 11:39 ~~mr.li~~ 阅读(281) 评论(0) 推荐(0) 编辑
摘要:我们通常在读写文件的时候需要捕获异常并关闭流,如下所示: public static void test1() { Student[] students = new Student[3]; students[0] = new Student("小丽", 2, 17); students[1] = n 阅读全文
posted @ 2021-02-18 17:24 ~~mr.li~~ 阅读(4286) 评论(0) 推荐(1) 编辑
摘要:指数:如3的4次方,其中的“4”就是“3”的指数。 幂:如:3的4次方结果为81,这里的“81”就是他们的幂。 对数:对数是对求幂的逆运算,正如除法是乘法的倒数,反之亦然。如3的4次方为81,这里面3为底数,4为对数。或者81的log(以3为底)是 4,亦或者说:81的以:3为底的对数是 4.参考: 阅读全文
posted @ 2021-02-08 22:22 ~~mr.li~~ 阅读(560) 评论(0) 推荐(0) 编辑
摘要:我的项目中就用的这种代码,只不过是将属性都修饰成私有的而已。 package com.cjhd.bv.push.web; import java.util.List; import java.util.Timer; import java.util.TimerTask; import java.ut 阅读全文
posted @ 2020-12-08 14:50 ~~mr.li~~ 阅读(183) 评论(0) 推荐(0) 编辑
摘要:package cn.mr.li; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStream; import java.io 阅读全文
posted @ 2020-10-23 18:48 ~~mr.li~~ 阅读(458) 评论(0) 推荐(0) 编辑
摘要:http介绍:http是一套规范,一种网络数据交互的标准协议,不同的语言,不同的数据想要实现合理的数据交互(例如:浏览器和服务器数据交互),就得按照他所规定的协议来,这样就会形成标准的(大家都认识的)数据交互。 http交互流程: 1.客户端和服务器建立起连接通道。 2.客户端发送请求给服务器。 3 阅读全文
posted @ 2019-04-13 00:03 ~~mr.li~~ 阅读(725) 评论(0) 推荐(0) 编辑
摘要:1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象,在使用时能快速找到的对象,这就是注解的意思。如果还是有点懵,那就只需要记住,凡是被标注的对象都是特殊 阅读全文
posted @ 2019-03-01 10:34 ~~mr.li~~ 阅读(1160) 评论(0) 推荐(0) 编辑
摘要:打印结果: 创建一个Optional对象的方式一:123 Optional操作:对象是否为空:true Optional操作:flatMap可以循环调用其中的方法,4.0的平方根处以2是:1.0 流操作:将此流中的所有元素组合成一条字符串返回: 一,二,三,四,五,六 流操作:最大值:589.0 最 阅读全文
posted @ 2019-01-30 17:42 ~~mr.li~~ 阅读(485) 评论(0) 推荐(0) 编辑
摘要:打印结果: map:{小明=name:小明sex:男age18, 小丽=name:小丽sex:女age16, 小王=name:小王sex:男age19} 如果有2个key重复了就用新的,‘y’,想用旧的代替就用'x',自己选择,map2:{小明=name:小明sex:男age19, 小丽=name: 阅读全文
posted @ 2019-01-30 17:39 ~~mr.li~~ 阅读(12497) 评论(0) 推荐(0) 编辑
摘要:(a ^ b) 结果: 7 (bool1 ^ bool2) 结果: false (a & b) 结果: 8 (a | b) 结果: 15 (b >>> 2) 结果: 2 (b << 3) 结果: 64 阅读全文
posted @ 2019-01-29 21:48 ~~mr.li~~ 阅读(2134) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示