
Java基础
天明少侠
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 元注解
元注解 常用的元注解有:@Target、@Retention、@Documented、@Inherited 、@Repeatable @Target 当一个注解被 @Target 注解时,指定使用的范围,开发中将注解用在类上(如@Controller)、字段上(如@Autowire)、方法上(如@RequestMapping)、方法的参数上(如@RequestParam)等比较常见 @Retention 存活时间 注解的生命周期,用于定义注解的存活阶段,可以存活在源码级别、编译级别(字节码级别)、运行时原创 2022-02-28 17:21:32 · 655 阅读 · 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 · 138 阅读 · 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 · 205 阅读 · 0 评论 -
Java 多态
原则 编译看左边,运行看右边。 父类型引用指向子类型对象,无法调用只在子类型里定义的方法 向上转型一定是安全的。但是也有个弊端,一旦对象向上转型为父类,那么就无法调用子类原本特有的内容(解决方案:向下转型) 代码 package com.prometheus.test; class Cat extends Animal { @Override public void eat() { System.out.println("猫在吃鱼"); } publ原创 2021-06-30 14:05:24 · 137 阅读 · 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 · 157 阅读 · 0 评论 -
正则表达式
捕获组 捕获组是把多个字符当一个单独单元进行处理的方法,它通过对括号内的字符分组来创建。 例如,正则表达式 (dog) 创建了单一分组,组里包含"d",“o”,和"g"。 捕获组是通过从左至右计算其开括号来编号。例如,在表达式((A)(B(C))),有四个这样的组: ((A)(B©)) (A) (B©) © 可以通过调用 matcher 对象的 groupCount 方法来查看表达式有多少个分组。groupCount 方法返回一个 int 值,表示matcher对象当前有多个捕获组。 还有一个特殊的组(gr原创 2021-04-22 19:44:31 · 152 阅读 · 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 · 896 阅读 · 0 评论 -
java.util.stream.Stream#map
java.util.stream.Stream#map 遍历取值 Teacher @Data @Builder public class Teacher { private String name; private Integer age; } Solution public class Solution { public static void main(String[] args) { Teacher teacherA = new Teacher.Tea原创 2020-11-24 09:48:29 · 274 阅读 · 0 评论 -
Java 集合按照多字段排序
以 Apple 实体为例,先按 name 升序排序,再按 size 降序排序 测试代码 Apple 类 package com.me.entity; import lombok.Builder; import lombok.Data; /** * @author yanyg * @since 2020/8/5 */ @Data @Builder public class Apple { private String color; private String name; .原创 2020-08-06 16:37:12 · 723 阅读 · 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 · 371 阅读 · 0 评论 -
throw和throws的区别
throw throw关键字用来在程序中(方法体中)明确的抛出异常 @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 · 212 阅读 · 0 评论