
java类
文章平均质量分 75
ktoking
这个作者很懒,什么都没留下…
展开
-
深入介绍和使用Java8的Collector接口
深入介绍和使用Java8的Collector接口原创 2022-01-24 19:56:22 · 685 阅读 · 2 评论 -
Java stream 处理分组后[升降序key]取每组最大
Java stream 处理分组后[升降序key]取每组最大一. 需求二. 整活git仓库直达如何让同事看不懂你写的代码 然后觉得你非常牛逼 这里用到了stream()与Lambda 需要有点基础,没基础你炫个????一. 需求有一组(K=V)类型的字符串,需要你将它按照key分组并找到每组最大的数字收集起来,key需要经过排序(升序或者降序)List<String> numStr = Lists.newArrayList("aa=1", "bb=10", "cc=1111", "aa原创 2021-11-08 19:40:59 · 3091 阅读 · 0 评论 -
三句话 让同事看不懂代码 stream流groupingby分组后排序重构value
三句话 让同事看不懂代码 stream流groupingby分组后排序重构value一. 需求二. 上操作git仓库直达如何让同事看不懂你写的代码 然后觉得你非常牛逼 这里用到了stream()与Lambda 需要有点基础,没基础你炫个????一. 需求又来一个新需求 我们需要将相同key的value集合起来(对象list< Obiect >或者list < string >),并按照指定字符串进行内部排序 例如aa > bb > cc (指定字符) 其他的排在后原创 2021-10-19 20:10:23 · 4385 阅读 · 9 评论 -
一看就懂的设计模式〖三〗建造者模式
一看就懂的设计模式〖三〗建造者模式一. 建造者方法二. 具体实现2.1 上代码2.2 建造者模式另外一种使用制作不易,转载请标注~仓库链接一键直达一. 建造者方法创建者模式又叫建造者模式,是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。创建者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加以抽象,通过子类继承或者重载的方式,动态的创建具有复合属性的对象。优点1.使操作获取对象的人不再关心内部对象构建的逻辑,把内部的建造过程和细节隐藏起来2.将代码封装复用,提原创 2021-09-18 15:56:44 · 169 阅读 · 3 评论 -
Java Stream如何写出高雅又装*的代码
Java Stream如何写出高雅又装*的代码一. 冷静分析二. 直接开装2.1 初级炫2.2 普通炫2.3 高级炫2.4 再炫一波 拿到当前key与对应的数量2.5 Map Reduce炫好家伙直接装一波,直接起飞~ 制作不易,转载请标注git仓库直达如何让同事看不懂你写的代码 然后觉得你非常牛逼 这里用到了stream()与Lambda 需要有点基础,没基础你炫个????优雅永不过时~ 看下面文章时记得穿燕尾服 拿高脚杯List<String> strings = Lists.ne原创 2021-08-18 19:28:33 · 885 阅读 · 6 评论 -
一看就懂的设计模式〖二〗模板模式
一看就懂的设计模式〖二〗模板模式一. 模板方法二. 直接上饭制作不易,转载请标注~仓库链接一键直达一. 模板方法看不懂的说就是模板方法是一个比较简单的模式。它的主要思想是,定义一个操作的一系列步骤,对于某些暂时确定不下来的步骤,就留给子类去实现好了,这样不同的子类就可以定义出不同的步骤。明白的说一看到模板模式,首先想到肯定会有很多模板,每个模板类型结构一样,实现着不同的方法例如我们去恰饭,不管你吃什么饭,肯定只有那几个步骤进到饭店拿到菜单吃饭~付钱~二. 直接上饭定义一个抽象原创 2021-08-17 19:34:09 · 142 阅读 · 0 评论 -
一看就懂的设计模式〖一〗Spirng实现的策略模式
设计模式〖一〗Spirng实现的策略模式一. 代码里的if else二. 什么是策略模式?2.1 ''干什么''代码2.2 具体的策略2.3 "怎么干"代码后面会更新别的模式,学到了的话记得三连~仓库链接一键直达一. 代码里的if else如下图,例如你写一个方法里面带着多重判断,一开始你可能觉得能看得懂,但是慢慢的方法体里面代码增多,type类型也不止几种,到时候你一个方法里面的代码行数可能成吨上涨,最后来维护代码的人一定炸裂~二. 什么是策略模式?同上代码,我们可以看出一个方法里面需要通原创 2021-08-11 14:27:11 · 173 阅读 · 0 评论 -
记录报错 java.lang.IllegalStateException: Failed to load interface org.mockito.plugins.MockMaker
找了一下午,终于解决记录报错 java.lang.IllegalStateException: Failed to load interface org.mockito.plugins.MockMakerIDEA打开这个按照箭头打开把这个添加进来就OK,别问为什么按着做就行大功告成!原创 2021-07-15 19:00:52 · 2698 阅读 · 4 评论 -
Java不知道怎么学?吐血整理自己刷题与学习记录
哪里不会点哪里~LeetCode-Nowcoder-DataStruct一. BUFFcode 记录牛客网的刷题记录二. DataStructure 数据结构三. DynamicProxy 动态代理四. JUC Java.util.concurrent 并发编程艺术五. LeetCode 记录力扣刷题六. NIODemo NIO网络编程这些自己整理而成的东西,转载一定要标注哦~~git仓库点开直达LeetCode-Nowcoder-DataStruct记录日常刷题与数据结构,包含以下 个大包一.原创 2020-06-12 15:45:57 · 1533 阅读 · 2 评论 -
Java〖 LRU缓存机制〗力扣146手撕LRU
Java〖 LRU缓存机制〗力扣146一. 分析 LinkedHashMap1.1 LinkedHashMap实现1.2 上代码(LinkedHashMap实现)二. 手写LRU2.1 分析2.2 双向链表2.3 LRU实现类制作不易,转载请标注~运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。原创 2020-05-26 15:58:28 · 864 阅读 · 1 评论 -
Java〖链表〗各种单链表的面试题,你真的做得出来吗
Java 实现链表实现功能大佬们看着点喷 orz 给跪了实现功能链表无序加入数据打印所有节点信息有序插入节点修改节点数据删除节点获取链表有效节点个数获取倒数第K个节点(思路:定义两个指针变量一开始指向头节点,让第一个first先走k-1步,然后第二个second跟第一个一起走,当第一个走到头后,输出第二个就是倒数第K个元素)用栈来反转链表使用头插法反转链表将两个有序的链表合...原创 2020-05-06 15:39:30 · 265 阅读 · 1 评论 -
Java〖NIO篇〗看这一篇就够了 缓冲区 通道 阻塞式非阻塞式IO
Java NIO一. NIO与IO区别二. 缓冲区2.1 直接缓冲区与非直接缓冲区三. 通道3.1参考课程PS: 之前一直想了解这个NIO到底是什么东西,奈何目前用不到,听说现在许多框架都在用,而且面试的时候也有被问道,感觉还是去多了解了解底层怎么实现的~~这是我的第100篇博客!!!一. NIO与IO区别NIO主要有三大核心部分:Channel(通道),Buffer(缓冲区), Sel...原创 2020-05-04 21:21:22 · 757 阅读 · 0 评论 -
Java 手写二分查找算法(找出全部下标),递归与非递归实现
Java 手写二分查找算法,递归与非递归你要走二分查找,你首先得支楞起来啊~(数组有序)一.递归实现二. 非递归实现大佬们,把你们的优秀代码展示出来啊~(例如Python一行?),嘤嘤嘤~二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。你要走二分查找,你首先得支楞起来啊~(数组有序)一...原创 2020-05-01 21:12:01 · 708 阅读 · 4 评论 -
Java 面试大全〖九〗多线程实现生产者消费者模式三种方法
Java 面试大全〖九〗生产者消费者模式一. synchronized实现二. Lock实现三. 阻塞队列实现生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理...原创 2020-04-21 23:55:50 · 1272 阅读 · 0 评论 -
Jave 面试 CAS就这?底层与原理与自旋锁
CAS就这?一. CAS是什么?二. CAS底层原理2.1 CAS底层唉....还没写完呢,明天就写完了!好兄弟们,不会真有人看不懂CAS吧?反正我是没看懂…一. CAS是什么?import java.util.concurrent.atomic.AtomicInteger;/** * 1. CAS是什么? => compareAndSet 比较并交换 */public cl...原创 2020-03-23 23:31:37 · 3421 阅读 · 2 评论 -
JAVA 反射篇 看这一篇就够了
JAVA〖八〗反射一. 反射:框架设计的灵魂1. JAVA代码在计算机中经历的三个阶段二. 获取Class对象的方式:三. Class对功能:获取功能1. 获取成员变量们2. 获取构造方法们3. 获取成员方法们:4. 获取全类名四. 写一个反射的案例五. 总结制作不易,转载请标注~~~一. 反射:框架设计的灵魂1. JAVA代码在计算机中经历的三个阶段框架:半成品软件。可以在框架的基础上进...原创 2020-02-22 22:10:30 · 497 阅读 · 0 评论 -
JAVA面试大全〖七〗 面向对象
JAVA面试基础〖七〗一. 寄语(武汉加油)二. 请你讲讲abstract class和interface有什么区别?下面比较一下两者的语法区别:三. 请说明一下final, finally, finalize的区别。四. 请说明面向对象的特征有哪些方面。五. 请说明Comparable和Comparator接口的作用以及它们的区别。一. 寄语(武汉加油)大三了,也不能浪了,总得为下学期的秋...原创 2020-02-07 00:58:18 · 186 阅读 · 0 评论 -
JAVA面试大全〖六〗 面向对象
JAVA面试基础〖六〗一. 寄语(武汉加油)二. 请解释Java中的概念,什么是构造函数?什么是构造函数重载?什么是复制构造函数?三. 请说明Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?四. 请说明Query接口的list方法和iterate方法有什么区别?五. 请判断,两个对象值相同(x.equals(y) == true),但却可有不同的has...原创 2020-02-04 23:44:46 · 272 阅读 · 1 评论 -
JAVA面试大全〖五〗 JAVA基础
JAVA面试基础〖四〗别的就不闲扯了,武汉加油一. equals()方法和hashCode()方法是什么?二. 为什么要重写equals()方法?三. 为什么要重写hashCode()方法?四. 为什么java中在重写equals()方法后必须对hashCode()方法进行重写?五. .编写一个完美equals()的几点建议转自此处别的就不闲扯了,武汉加油一. equals()方法和ha...原创 2020-02-02 00:40:58 · 181 阅读 · 0 评论 -
JAVA面试大全〖四〗 JAVA基础
JAVA面试基础〖四〗一. 寄语二. 请你介绍一下map的分类和常见的情况一. 寄语大三了,也不能浪了,总得为下学期的秋招找个好点的工作啊,前提我得把基础再过一遍,这个寒假我会边学习边总结一些面试的基础问题~,能写完的我尽量写完,补充的尽量补充,干就完了,奥里给!ps.大部分找的题都是在牛客的面试经验里找来的,加上一些我自己的理解制作而成~~二. 请你介绍一下map的分类和常见的情况1....原创 2020-01-30 00:34:01 · 294 阅读 · 0 评论 -
JAVA面试大全〖三〗 JAVA基础
JAVA面试基础〖三〗一. 寄语二. Array和列表ArrayList的区别三. 请你解释一下值传递和引用传递?四. 请你解释为什么会出现4.0-3.6=0.40000001这种现象?五. 请你说说Lamda表达式的优缺点。六. 你知道java8的新特性吗,请简单介绍一下七. 请你解释为什么重写equals还要重写hashcode?制作不易,转载请标注~~一. 寄语大三了,也不能浪了,总...原创 2020-01-18 00:12:53 · 250 阅读 · 0 评论 -
JAVA面试大全〖二〗 JAVA基础
JAVA面试基础〖二〗一. 寄语二. 请你说说Java和PHP的区别?三. 请你比较一下Java和JavaSciprt?四. 请你讲讲&和&&的区别?五. int和Integer有什么区别?六. 请你说明String 和StringBuffer的区别制作不易,转载请标注~~一. 寄语大三了,也不能浪了,总得为下学期的秋招找个好点的工作啊,前提我得把基础再过一遍,这个...原创 2020-01-16 22:57:48 · 300 阅读 · 0 评论 -
定义一个类,该类中包含以下几个方法(静态):1.实现两个字符串数组的逆序排序,输出结果为字符串数组; 2.求两个整形数组的交集; 3.求两个浮点型数组的并集;
二.定义一个类,该类中包含以下几个方法(静态):实现两个字符串数组的逆序排序,输出结果为字符串数组;求两个整形数组的交集;求两个浮点型数组的并集;代码祭天~主要是用了Java8的新特性Lambda表达式package SencondDay;import java.util.ArrayList;import java.util.Arrays;import java.util....原创 2019-11-14 11:49:31 · 2482 阅读 · 0 评论 -
定义一个汽车类,要求该类中至少包含5个私有的属性(为每个属性定义设置和获取方法),该类中至少包含两个构造方法(一个无参,一个有参),以及包含5~6个方法来描述汽车对象的行为(其中一个方法要能打印输出
一.定义一个汽车类,要求该类中至少包含5个私有的属性(为每个属性定义设置和获取方法),该类中至少包含两个构造方法(一个无参,一个有参),以及包含5~6个方法来描述汽车对象的行为(其中一个方法要能打印输出汽车对象的所有属性值)。上代码package SencondDay;import java.math.BigDecimal;public class Car { private...原创 2019-11-14 11:46:12 · 2821 阅读 · 0 评论 -
创建一个抽象类动物类以及以下几个接口:进食的接口、睡觉的接口、思考的接口、说话的接口。分别定义猫类、人类、鸟类继承动物类并选择实现上述的接口,并创建实例验证。
创建一个抽象类动物类以及以下几个接口:进食的接口、睡觉的接口、思考的接口、说话的接口。分别定义猫类、人类、鸟类继承动物类并选择实现上述的接口,并创建实例验证。上代码package ThirdDay;public abstract class Animal { public abstract void eat(); public abstract void sleep()...原创 2019-11-14 11:43:52 · 3687 阅读 · 1 评论 -
设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类来继承图形类,并实现上述两个方法。并创建实例验证。
设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类来继承图形类,并实现上述两个方法。并创建实例验证。直接上代码了package ThirdDay; abstract class Shape { //计算面积 public abstract Double calculateS(); //计算周长 publi...原创 2019-11-14 11:42:40 · 10457 阅读 · 0 评论 -
微信小程序拉取微信登录结合springboot与redis
微信小程序登录先来看看流程图上图就是微信小程序登录的过程,我们只先看上半部分,调用拉取微信自动获取的登陆方法首先需要在微信开发者工具里的.js的wx.login方法来获取一个存在5分钟的code然后我们把这个code发到后台,用于下一步换取session_key+openid我们在后端服务器中封装一些参数去请求wx换取session_key+openid得到数据存到一个对象里,再存...原创 2019-09-22 22:34:46 · 1220 阅读 · 0 评论 -
SpringBoot与Mybatis的点歌项目(基础)
搞一个简单的web项目大三了,自学了一些web开发方面的知识,今天写出来分享一下,怎么用java写后台开发首先我用的是idea编译器,就是长下面这个样子的我也是小白,只是想分享一些自己写的web项目,大佬给跪了------简单介绍下这个项目,一个简单的点歌服务项目,类似于大学里面广播站的点歌台,你输入歌曲一些信息和发布时间,后台人员接收到,就可以在每天你想要的那个时间播放你点的歌曲和留言...原创 2019-09-15 21:36:35 · 385 阅读 · 0 评论 -
joda-time使用心得,解决方法
joda-time使用心得1.如何将JavaDate转换为JodaDateTime:我们在使用joda-time的时候难免会跟dataObject类里面的JavaDate打交道,但是不转换还是用不了,这里提供了解决方案:Date date = new Date();DateTime dateTime = new DateTime(date);相反,也可以反过来转换回去Date dat...原创 2019-09-09 22:04:16 · 732 阅读 · 2 评论 -
初识Spring【一】
Spring概述一、初识Spring Spring是分层的Java SE/EE应用full-stack轻量级开源编程,以IOC和AOP为核心,提供了展现层Spring MVC和持久性Spring JDBC以及业务层事务管理等众多的企业应用技术,还能整合开源世界众多的著名的第三方框架和类库,逐渐成为使用最多的Java EE企业应用开源框架。 ...原创 2019-08-29 18:19:01 · 153 阅读 · 0 评论 -
niming
前端-业务逻辑/api/{version}/teacher/listsparameters: nulldescription: 获取所有教师信息method: GETresponse:{ "status": "success", "data": [{ "teacherId": 100001, "teacherName": "王XX"...原创 2019-08-15 20:51:19 · 165 阅读 · 0 评论 -
JAVA里面的几种排序方法及二分法!干货
列举几种排序方法在java里面快速排序冒泡排序选择排序二分查找上代码首先用了四个长度为10的数组保存了四组随机数据进行以下操作每一个块都划分了不同的排序方法总结二分查找在最后面找到了返回find itpackage kai;import java.util.Arrays;public class kaikai { public static void main(S...原创 2019-07-03 23:16:19 · 465 阅读 · 1 评论