![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
天明少侠
这个作者很懒,什么都没留下…
展开
-
Java 元注解
元注解常用的元注解有:@Target、@Retention、@Documented、@Inherited 、@Repeatable@Target当一个注解被 @Target 注解时,指定使用的范围,开发中将注解用在类上(如@Controller)、字段上(如@Autowire)、方法上(如@RequestMapping)、方法的参数上(如@RequestParam)等比较常见@Retention 存活时间注解的生命周期,用于定义注解的存活阶段,可以存活在源码级别、编译级别(字节码级别)、运行时原创 2022-02-28 17:21:32 · 582 阅读 · 1 评论 -
MD5加密算法
EncrypMD5 工具类package cn.com.cwit.utils;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class EncrypMD5 { // 全局数组 private final static String[] strDigits = { "0", "1", "2", "3", "4", "5", "6原创 2021-11-09 15:30:49 · 105 阅读 · 0 评论 -
String、StringBuffer和StringBuilder总结
三者安全性比较StringBuffer:线程安全,可变;StringBuilder:线程非安全的,可变;String:“字符串常量”,不可变,每次改变需要重新创建对象。String(字符串常量):Strings are constant; their values cannot be changed after they are created.StringBuffer(字符串变量):S...原创 2018-09-26 21:37:20 · 185 阅读 · 0 评论 -
Java 多态
原则编译看左边,运行看右边。 父类型引用指向子类型对象,无法调用只在子类型里定义的方法向上转型一定是安全的。但是也有个弊端,一旦对象向上转型为父类,那么就无法调用子类原本特有的内容(解决方案:向下转型)代码package com.prometheus.test;class Cat extends Animal { @Override public void eat() { System.out.println("猫在吃鱼"); } publ原创 2021-06-30 14:05:24 · 102 阅读 · 0 评论 -
nio 复制文件
代码如下package com.prometheus.en;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;/** * nio 复制文件 */public class NioFileCo原创 2021-06-08 19:19:33 · 124 阅读 · 0 评论 -
正则表达式
捕获组捕获组是把多个字符当一个单独单元进行处理的方法,它通过对括号内的字符分组来创建。例如,正则表达式 (dog) 创建了单一分组,组里包含"d",“o”,和"g"。捕获组是通过从左至右计算其开括号来编号。例如,在表达式((A)(B(C))),有四个这样的组:((A)(B©))(A)(B©)©可以通过调用 matcher 对象的 groupCount 方法来查看表达式有多少个分组。groupCount 方法返回一个 int 值,表示matcher对象当前有多个捕获组。还有一个特殊的组(gr原创 2021-04-22 19:44:31 · 111 阅读 · 0 评论 -
Java Double 避免科学计数法
代码package com.me.basic;import java.math.BigDecimal;import java.text.DecimalFormat;public class ScientificCounting { public static void main(String[] args) { funcOne(); System.out.println("============"); funcTwo(); }原创 2021-01-21 19:09:18 · 799 阅读 · 0 评论 -
java.util.stream.Stream#map
java.util.stream.Stream#map遍历取值Teacher@Data@Builderpublic class Teacher { private String name; private Integer age;}Solutionpublic class Solution { public static void main(String[] args) { Teacher teacherA = new Teacher.Tea原创 2020-11-24 09:48:29 · 247 阅读 · 0 评论 -
Java 集合按照多字段排序
以 Apple 实体为例,先按 name 升序排序,再按 size 降序排序测试代码Apple 类package com.me.entity;import lombok.Builder;import lombok.Data;/** * @author yanyg * @since 2020/8/5 */@Data@Builderpublic class Apple { private String color; private String name; .原创 2020-08-06 16:37:12 · 674 阅读 · 0 评论 -
Class.forName 使用
Class.forName方法的作用1、加载给定的类到内存中2、初始化给定的类然后 JVM 就可以使用它了举例源码来自开源项目 pagehelper/** * 创建 SQL 缓存 * * @param sqlCacheClass * @return */public static <K, V> Cache<K, V> createCache(String sqlCacheClass, String prefix, Properties properties原创 2020-08-04 11:16:22 · 318 阅读 · 0 评论 -
throw和throws的区别
throwthrow关键字用来在程序中(方法体中)明确的抛出异常@SuppressWarnings("unchecked")private <T> T execute(final ChannelCallback<T> action, final ConnectionFactory connectionFactory) { if (this.retryTemplate != null) { try { return this.retryTemplate.execute原创 2020-08-01 18:19:31 · 181 阅读 · 0 评论