JavaSE
文章平均质量分 58
Java开发基础知识
Firm陈
保持常态
展开
-
Java中的转义字符(8)
转义字符转载 2022-10-01 20:16:32 · 3526 阅读 · 0 评论 -
MySQL STR_TO_DATE函数
mysql中的函数转载 2022-10-01 19:58:13 · 260 阅读 · 0 评论 -
java try catch 异常后还会继续执行吗
抛出异常之后会不会执行转载 2022-10-01 19:54:40 · 6233 阅读 · 0 评论 -
死锁面试题(什么是死锁,产生死锁的原因及必要条件)(*)
死锁转载 2022-08-23 10:57:25 · 204 阅读 · 0 评论 -
Java中hashCode的作用(*)
hashcode原创 2022-08-22 15:04:36 · 175 阅读 · 0 评论 -
Java socket详解
socket转载 2022-08-20 11:21:39 · 7395 阅读 · 0 评论 -
BIO基本介绍以及使用
BIO原创 2022-08-19 16:57:04 · 1220 阅读 · 0 评论 -
java中的 |=(位或运算符)、&=(位与运算符)、^=(位异或运算)、~=(位非运算符)
位运算转载 2022-08-08 10:24:59 · 890 阅读 · 0 评论 -
JDK中各种Jar包说明
jdk转载 2022-08-06 14:47:47 · 2703 阅读 · 0 评论 -
JAVA CAS原理深度分析(*)
cas转载 2022-07-26 18:14:42 · 123 阅读 · 0 评论 -
Java实现自定义注解(*)
java中的注解转载 2022-07-26 15:11:50 · 114 阅读 · 0 评论 -
Java注解定义及用法(*)
java中注解转载 2022-07-26 15:05:08 · 452 阅读 · 0 评论 -
Java中的左移、右移详细分析(*)
左移、右移转载 2022-07-21 16:06:10 · 4765 阅读 · 1 评论 -
Java中常见关键字(*)
java关键字原创 2022-07-18 11:08:52 · 1096 阅读 · 0 评论 -
Json数据格式(*)
json原创 2022-07-18 10:58:13 · 166 阅读 · 0 评论 -
Java中动态代理的两种方式JDK动态代理和cglib动态代理以及区别(*)
动态代理转载 2022-07-17 20:57:35 · 2164 阅读 · 0 评论 -
Java中的代理模式——静态代理以及分析静态代理的缺点(*)
静态代理转载 2022-07-17 20:52:34 · 267 阅读 · 0 评论 -
Java在Debug时,变量列表中 {类名@465} @后面数字的含义(*)
调试转载 2022-07-16 17:28:12 · 1466 阅读 · 1 评论 -
HashMap初始化的时候赋值(*)
Java中的HashMap是一种常用的数据结构,一般用来做数据字典或者Hash查找的容器。一般我们初始化并赋初值是这样做的:HashMap<String, Object> map = new HashMap<>();map.put("name", "yanggb"); map.put("name1", "huangq");但是有时候我们会想在一个表达式中完成初始化并赋初值的操作:HashMap<String, Object> map = new HashMa原创 2022-04-01 15:06:06 · 3399 阅读 · 0 评论 -
枚举类enum的values()方法(*)
value()方法可以将枚举类转变为一个枚举类型的数组,因为枚举中没有下标,我们没有办法通过下标来快速找到需要的枚举类,这时候,转变为数组之后,我们就可以通过数组的下标,来找到我们需要的枚举类。接下来就展示代码了。public enum SearchCategory { ALL("综合查询"), NEWS("新闻"), TAXPAYER("纳税人"), QUIZ("知识问答"), POLICY_LAW("政策法规"), DOC("涉税文档"), PI原创 2022-03-31 11:05:46 · 772 阅读 · 0 评论 -
Java的Stream流中的常用方法forEach,Arrays.stream(xxx).forEach(*)
Arrays.stream(xxx).forEach,一直使用Java8 但是新特性却是没怎么用过,借此项目机会,用到的都记录下来。案例1:List<String> updList = new ArrayList<>();List<String> delList = new ArrayList<>();for (int i = 0; i < 1; i++) { String uu = "test1-test2-test3原创 2022-02-18 14:43:07 · 4192 阅读 · 1 评论 -
BeanUtils.populate 的作用(*)
BeanUtils.populate( bean Object , Map ) — 是BeanUtils工具类的一个方法;在使用这个方法之前得有个 JavaBean …然后通过该方法将map中的数据映射到JavaBean中的get和set方法中(封装数据到JavaBean中)。之后取值就直接从JavaBean中的get和set方法中取值就可以了。该方法的函数原型为:BeanUtils.populate( Object bean, Map properties )。这个方法会遍历map<key,原创 2022-02-18 14:22:12 · 149 阅读 · 0 评论 -
Java Collections singleton()方法与示例(*)
集合类singleton()方法singleton()方法在java.util包中可用。singleton()方法用于返回不可变集[即不可变集仅包含给定对象(obj)]。singleton()方法是静态方法,因此可以使用类名进行访问,如果尝试使用类对象访问该方法,则不会收到错误。返回不可变集时,singleton()方法不会引发异常语法:public static Set singleton(Type obj);参数:类型obj –表示要旋转的list(l)。返回值此方法的返回类型原创 2022-02-16 17:39:56 · 2415 阅读 · 0 评论 -
深入理解Java双冒号(::)运算符的使用(*)
Jdk8中有好多新的特性,比如引入Lambda,简化代码的书写等等我们先看一个关于Lambda的使用/*** 输出list */@Testpublic void test() { String[] array = {"aaaa", "bbbb", "cccc"}; List<String> list = Arrays.asList(array); //Java 7 for(String s:list){ System.out.println(s); } //转载 2022-02-16 17:31:52 · 4730 阅读 · 0 评论 -
Java8 中 List 转 Map(Collectors.toMap) 使用技巧(*)
在实际项目中我们经常会用到 List 转 Map 操作,在过去我们可能使用的是 for 循环遍历的方式。举个例子:先定义类:// 简单对象 @Accessors(chain = true) // 链式方法 @lombok.Dataclass User { private String id; private String name;}然后有这样一个 List:List<User> userList = Lists.newArrayList( ne原创 2022-02-16 13:49:03 · 1586 阅读 · 0 评论 -
mysql日期范围查找(两个日期之间的记录)(*)
最近常用到mysql的datetime类型的日期范围搜索,总结有以下几种方式可以,可以查询精确到秒之间的记录。字符串日期可以直接和datetime类型之间比较,无需转换,Mysql会将字符串类型日期转换成长整型数字进行比较,当然你也可以转换为同一类型后再比较mysql日期与字符串转换函数字符串转日期:STR_TO_DATE(‘2019-07-25 00:00:33’, ‘%Y-%m-%d %H:%i:%s’) ,走索引日期转字符串:DATE_FORMAT(‘2019-07-25 00:00:33’,原创 2022-01-11 16:23:01 · 8696 阅读 · 0 评论 -
java把时间戳转换成时间(*)
java中时间精确到毫秒级,所以需求时间需要 除以1000//将时间转换为时间戳public static String dateToStamp(String s) throws Exception {String res;//设置时间格式,将该时间格式的时间转换为时间戳SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date = simpleDateFormat.p原创 2022-01-11 16:19:46 · 11553 阅读 · 0 评论 -
关于〈? extends Class 〉和〈T extends Class〉的区别(*)
通配符>在Java中通配符用?表示。>在不确定泛型参数的具体类型时,可以使用?代替,>比如public void set(List<?> list)>在调用方法时,参数既可以是List<String>也可以是List<Integer>边界<? extends Number>表示上边界限定,泛型参数只能是Number及其子类,一旦实例化其他参数类型则会报错<? super Number>表示下边界限定,泛型转载 2021-12-22 11:05:40 · 1507 阅读 · 0 评论 -
Java泛型中E、T、K、V等的含义(*)
Java泛型中的标记符含义: E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型)? - 表示不确定的java类型 S、U、V - 2nd、3rd、4th typesObject跟这些标记符代表的java类型有啥区别呢?Object是所有类的根类,任何类的对象都可以设置给该Object引用变量,使用的时候可能需要类型强制转换,但是用使用了泛型T、原创 2021-12-21 14:02:56 · 301 阅读 · 0 评论 -
Java双端队列Deque使用详解(*)
Deque是一个双端队列接口,继承自Queue接口,Deque的实现类是LinkedList、ArrayDeque、LinkedBlockingDeque,其中LinkedList是最常用的。Deque有三种用途:普通队列(一端进另一端出)Queue queue = new LinkedList()或Deque deque = new LinkedList()双端队列(两端都可进出)Deque deque = new LinkedList()堆栈Deque deque = ne转载 2021-12-20 21:48:41 · 412 阅读 · 0 评论 -
Java队列Queue使用详解(*)
Queue是java中实现队列的接口,它总共只有6个方法,我们一般只用其中3个就可以了。Queue的实现类有LinkedList和PriorityQueue。最常用的实现类是LinkedList。Queue的6个方法分类:压入元素(添加):add()、offer()相同:未超出容量,从队尾压入元素,返回压入的那个元素。区别:在超出容量时,add()方法会对抛出异常,offer()返回false弹出元素(删除):remove()、poll()相同:容量大于0的时候,删除并返回队头被删除的那个元素。转载 2021-12-20 21:44:09 · 5856 阅读 · 0 评论 -
Java Set.contains()方法:判断Set集合是否包含指定的对象(*)
Java 集合类中的 Set.contains() 方法判断 Set 集合是否包含指定的对象。该方法返回值为 boolean 类型,如果 Set 集合包含指定的对象,则返回 true,否则返回 false。语法:contains(Object o)示例:public static void main(String[] args){ Set set = new HashSet(); set.add(new Date()); set.add("apple"); set.原创 2021-12-18 15:52:10 · 3963 阅读 · 0 评论 -
List的contains方法使用(*)
List的contains方法用于判断对象是否存在于列表中。举例说明:这里简单的创建一个User类:public class User { private String id; private String name; private String phone; private String address; //忽略getters和setters}在main方法中创建3个User对象,并使他们的值相等。 User u1 = new User(); u1.setId("111转载 2021-12-18 15:49:35 · 719 阅读 · 0 评论 -
Java遍历Set集合方法(*)
对 set 的遍历 1.迭代遍历: Set<String> set = new HashSet<String>(); Iterator<String> it = set.iterator(); while (it.hasNext()) { String str = it.next(); System.out.println(str); } 2.for循环遍历: for (String str : set) {原创 2021-12-15 19:36:53 · 2692 阅读 · 0 评论 -
java8语法糖List<Integer>,List<String>之间互转(*)
public class Test { public static void main(String[] args) { List<Integer> integerList = new ArrayList<>(); integerList.add(1); integerList.add(2); integerList.add(3); // List<Integer> 转为 List&l转载 2021-12-15 16:20:46 · 5077 阅读 · 0 评论 -
谈谈实现Serializable接口的作用和必要性(*)
在Java编程中我们会看到源码中或者别人代码中很多实体Bean都实现了Serializable接口,但是我很多实体在使用的时候并没有序列化也能正常使用。由此引发了我的疑问,到底需不需要实现Serializable接口?答案是必要。概况:在程序中为了能直接以 Java 对象的形式进行保存,然后再重新得到该 Java 对象,这就需要序列化能力。序列化其实可以看成是一种机制,按照一定的格式将 Java 对象的某状态转化成介质可接受的形式,以方便存储或传输。序列化时将 Java 对象相关的类信息、属性及属性.转载 2021-12-12 16:43:07 · 719 阅读 · 0 评论 -
long型转String(*)
三种方法:package cn.success; /** * long型转String * @author: WYC * @date: 2018/6/6 19:55 */public class Test { public static void main(String[] args) { long a1 = 12; String s1 = a1 + ""; // 法1:直接加空串 Sy转载 2021-12-08 22:44:55 · 8142 阅读 · 0 评论 -
java获取当前时间戳的方法(*)
获取当前时间戳//方法 一System.currentTimeMillis();//方法 二Calendar.getInstance().getTimeInMillis();//方法 三new Date().getTime();获取当前时间SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式String date = df.format(new Date());// new Date()为获取原创 2021-12-08 19:36:16 · 42004 阅读 · 0 评论 -
使用Jackson – 将字符串转换为 JsonNode 对象(*)
概述本快速指南的主要目的是如何使用 Jackson2 来将一个字符串转换为 JsonNode 对象。JsonNode 定义在 com.fasterxml.jackson.databind.JsonNode 包中。快速转换可以使用下面的代码直接进行转换。转换的方式也比较简单,在定义好 ObjectMapper 对象后,直接使用这个对象的 readTree 方法将输入的字符串转换为 JsonNode 对象。考察下面的代码:@Testpublic void whenParsingJsonStrin转载 2021-12-08 11:14:37 · 3211 阅读 · 0 评论 -
Jackson API指南(*)
一.Jackson 概述 与 依赖1.市面上用于在 Java 中解析 Json 的第三方库,随便一搜不下几十种,其中的佼佼者有 Google 的 Gson, Alibaba 的 Fastjson以及本文的 jackson。2.我们在学习一门技术之前,首选要了解这门技术的优劣性,以及它和同等技术的对比。fastjson这么快老外为啥还是热衷 jackson?3.使用 Jackson 导入 jackson-databind、 jackson-annotations、jackson-core 3 个主要模转载 2021-12-05 16:46:56 · 1135 阅读 · 0 评论