版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_17522211/article/details/84545185
maven:
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.0.0</version>
</dependency>
java:
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Date;
import java.util.Enumeration;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import cn.hutool.core.date.DateUtil;
/**
* 字符串工具类
*/
public class StringUtil {
public static String IP = getIp();
/**
* 验证字符串是否为数字
*/
public static boolean isNumeric(String str) {
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if (!isNum.matches()) {
return false;
}
return true;
}
/**
* 验证是否为空
*/
public static String checkIsNull(String name, Object value) throws NullPointerException {
if (value == null || "".equals(value)) {
throw new NullPointerException("字段[" + name + "]不能为空.");
}
return String.valueOf(value);
}
// 判断是否为NULL,如果为NULL则返回""
public static String strFormatNull(Object object) {
if (object == null) {
return "";
}
// 如果object为null, String.toString()会报错. String.valueOf()返回字符串NULL
return String.valueOf(object);
}
// 判断是否为NULL,如果为NULL则返回""
public static int strFormatInt(Object object) {
if (object == null || "".equals(object)) {
return 0;
}
return Integer.valueOf(object.toString());
}
// 判断是否为NULL,如果为NULL则返回""
public static double strFormatDouble(Object object) {
if (object == null || "".equals(object)) {
return 0;
}
return Double.valueOf(object.toString());
}
// 对double保留两位小数
public static double formatDouble2(double d) {
BigDecimal bg = new BigDecimal(d).setScale(2, RoundingMode.UP);
return bg.doubleValue();
}
public static String getOrderNo(){
return DateUtil.format(new Date(), "yyyyMMddHHmmss") + getRandomNum(6);
}
/**
* 获取随机数
*/
private static final String RANDOM_BASE = "0123456789";
public static String getRandomNum(int length){
int randomNum;
char randomChar;
Random random = new Random();
StringBuffer str = new StringBuffer();
for (int i = 0; i < length; i++) {
randomNum = random.nextInt(RANDOM_BASE.length());
randomChar = RANDOM_BASE.charAt(randomNum);
str.append(randomChar);
}
return str.toString();
}
/**
* 获取随机字符串
*/
private static final String BASE = "abcdefghijklmnopqrstuvwxyz0123456789";
public static String getRandomStr(int length) {
int randomNum;
char randomChar;
Random random = new Random();
StringBuffer str = new StringBuffer();
for (int i = 0; i < length; i++) {
randomNum = random.nextInt(BASE.length());
randomChar = BASE.charAt(randomNum);
str.append(randomChar);
}
return str.toString();
}
/**
* 获取本机IP: 支持windows&linux
*/
@SuppressWarnings("rawtypes")
private static String getIp() {
Enumeration allNetInterfaces;
try {
allNetInterfaces = NetworkInterface.getNetworkInterfaces();
InetAddress ip = null;
while (allNetInterfaces.hasMoreElements()) {
NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
Enumeration addresses = netInterface.getInetAddresses();
while (addresses.hasMoreElements()) {
ip = (InetAddress) addresses.nextElement();
if (ip != null && ip instanceof Inet4Address) {
if (!"127.0.0.1".equals(ip.getHostAddress())) {
return ip.getHostAddress();
}
}
}
}
} catch (SocketException e) {
}
return "127.0.0.1";
}
public static String getAddress() {
return IP;
}
}