JAVA基础库的使用点滴

简介: Idea中双击SHIFT可以搜索[Eclipse中也有],这个很重要,可以找到当前的项目中可以引擎的已有的类,不要再次自己发明轮子 各种Util先在基础库和开源库中找 Base64编码 guava:com.

Idea中双击SHIFT可以搜索[Eclipse中也有],这个很重要,可以找到当前的项目中可以引擎的已有的类,不要再次自己发明轮子

各种Util先在基础库和开源库中找

Base64编码

guava:com.google.common.io.BaseEncoding

commons-codec:org.apache.commons.codec.binary.Base64

各种摘要等算法都有了

[WARNING] /opt/work/2014/work/centos2017/webman/webman/src/main/java/cn/csbit/util/License.java:[370,41] sun.misc.BASE64Encoder是内部专用 API, 可能会在未来发行版中删除

[WARNING] /opt/work/2014/work/centos2017/webman/webman/src/main/java/cn/csbit/core/report/vo/ReportVo.java

日期

commons-lang

org.apache.commons.lang.SerializationUtils

org.apache.commons.lang.time

DateFormatUtils DateUtils

cn.csbit.core.util.DateUtil

字符串处理

wpsB698.tmp

org.apache.commons.codec.binary

org.apache.commons.lang StringUtils

wpsB6A9.tmp

Files

  JDK新的版本才加的方便文件操作的类已经都有了

commons-io

org.apache.commons.io FilenameUtils 文件名的各种处理

FileSystemUtils 磁盘空间的状况

wpsB6AA.tmp

数字转换

Ints Longs Shorts UnsignedInts

com.google.common.primitives

@GwtIncompatible("doesn\'t work")

public static byte[] toByteArray(int value) {

return new byte[]{(byte)(value >> 24), (byte)(value >> 16), (byte)(value >> 8), (byte)value};

}

@GwtIncompatible("doesn\'t work")

public static int fromByteArray(byte[] bytes) {

Preconditions.checkArgument(bytes.length >= 4, "array too small: %s < %s", new Object[]{Integer.valueOf(bytes.length), Integer.valueOf(4)});

return fromBytes(bytes[0], bytes[1], bytes[2], bytes[3]);

}

public static byte[] shortToBytes(short number) {

int temp = number;

byte[] b = new byte[2];

for (int i = 0; i < b.length; i++) {

b[i] = new Integer(temp & 0xff).byteValue();// 将最低位保存在最低位

temp = temp >> 8; // 向右移8

}

return b;

}

public static byte[] toByteArray(int value) {

byte[] array = new byte[4];

for (int i = 0; i < 4; i++) {

array[i] = (byte) ((value >> (8 * i)) & 0XFF);

}

return array;

}

NumberUtil common-lang也有类似

IP地址

      #include <arpa/inet.h>

       uint32_t htonl(uint32_t hostlong);

       uint16_t htons(uint16_t hostshort);

       uint32_t ntohl(uint32_t netlong);

       uint16_t ntohs(uint16_t netshort);

ByteBuffer b = ByteBuffer.allocate(4);

b.order(ByteBuffer.LITTEN_ENDIAN);

b.putIn(100);

b.array();//可以获取字节数组

com.google.common.net.InetAddresses

相关文章
|
6月前
|
JavaScript 前端开发 Java
通义灵码 Rules 库合集来了,覆盖Java、TypeScript、Python、Go、JavaScript 等
通义灵码新上的外挂 Project Rules 获得了开发者的一致好评:最小成本适配我的开发风格、相当把团队经验沉淀下来,是个很好功能……
1248 103
|
7天前
|
自然语言处理 数据可视化 Java
iText 全面介绍:强大的 Java PDF 操作库
iText是强大的Java PDF库,支持创建、读取、加密、签名、水印、合并拆分等操作。广泛用于报表生成、电子签章、合同发票等场景。支持中文及多语言,推荐使用模块化、高性能的iText 7版本,适用于企业级PDF处理需求。
126 0
|
缓存 Java Maven
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
Java本地高性能缓存实践问题之SpringBoot中引入Caffeine作为缓存库的问题如何解决
566 1
|
9月前
|
安全 druid Java
Java 访问数据库的奇妙之旅
本文介绍了Java访问数据库的几种常见方式
127 12
|
11月前
|
Java BI API
Java Excel报表生成:JXLS库的高效应用
在Java应用开发中,经常需要将数据导出到Excel文件中,以便于数据的分析和共享。JXLS库是一个强大的工具,它基于Apache POI,提供了一种简单而高效的方式来生成Excel报表。本文将详细介绍JXLS库的使用方法和技巧,帮助你快速掌握Java中的Excel导出功能。
348 6
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
327 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
11月前
|
Java API Apache
|
安全 Java API
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
String常量池、String、StringBuffer、Stringbuilder有什么区别、List与Set的区别、ArrayList和LinkedList的区别、HashMap底层原理、ConcurrentHashMap、HashMap和Hashtable的区别、泛型擦除、ABA问题、IO多路复用、BIO、NIO、O、异常处理机制、反射
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
|
JSON JavaScript Java
在Java中处理JSON数据:Jackson与Gson库比较
本文介绍了JSON数据交换格式及其在Java中的应用,重点探讨了两个强大的JSON处理库——Jackson和Gson。文章详细讲解了Jackson库的核心功能,包括数据绑定、流式API和树模型,并通过示例演示了如何使用Jackson进行JSON解析和生成。最后,作者分享了一些实用的代码片段和使用技巧,帮助读者更好地理解和应用这些工具。
705 0
在Java中处理JSON数据:Jackson与Gson库比较
|
数据采集 存储 前端开发
Java爬虫开发:Jsoup库在图片URL提取中的实战应用
Java爬虫开发:Jsoup库在图片URL提取中的实战应用