java实现无符号数转换、字符串补齐、md5、uuid、随机数示例
java实现无符号数转换、字符串补齐、md5、uuid、随机数示例
发布时间:2017-01-07 来源:查字典编辑
摘要:复制代码代码如下:packagecom.hongyuan.test;importjava.security.MessageDigest;im...

java实现无符号数转换、字符串补齐、md5、uuid、随机数示例1

复制代码 代码如下:

package com.hongyuan.test;

import java.security.MessageDigest;

import java.security.NoSuchAlgorithmException;

import java.util.Random;

import java.util.UUID;

/*

* 杂项(无符号数转换,字符串补齐,md5,uuid,随机数)

*/

public class SundryTest {

//转成无符号数

public static Number toUnsignedNumber(Number num){

if(num instanceof Byte){

return (Byte)num & 0xff;

}else if(num instanceof Short){

return (Short)num & 0xffff;

}else if(num instanceof Integer){

return (Integer)num & 0xffffffffL;

}else{

return -1;

}

}

//左补齐

public static String leftPad(String str,String pad,int len){

String newStr=(str==null?"":str);

while(newStr.length()<len){

newStr=pad+newStr;

}

if(newStr.length()>len){

newStr=newStr.substring(newStr.length()-len);

}

return newStr;

}

//右补齐

public static String rightPad(String str,String pad,int len){

String newStr=(str==null?"":str);

while(newStr.length()<len){

newStr=newStr+pad;

}

if(newStr.length()>len){

newStr=newStr.substring(0, len);

}

return newStr;

}

//md5

public static String md5(String str){

StringBuilder sb=new StringBuilder();

try {

MessageDigest digest = MessageDigest.getInstance("MD5");

byte[] message=digest.digest(str.getBytes());

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

sb.append(leftPad(//左补齐

Integer.toHexString(//转成16进制数

(Integer)toUnsignedNumber(message[i])),//转成无符号数

"0",2).toUpperCase());//转成大写

}

} catch (NoSuchAlgorithmException e) {

throw new RuntimeException("不存在md5服务!");

}

return sb.toString();

}

//UUID

public static String uuid(){

return UUID.randomUUID().toString().replaceAll("-","").toUpperCase();

}

//随机数(包括min,不包括max)

public static int random(int min,int max){

if(min<=max){

Random random=new Random();

return random.nextInt(max-min)+min;

}else{

throw new IllegalArgumentException("无法处理一个不合法的数字区间!");

}

}

public static void main(String[] args){

System.out.println("MD5(123456):"+md5("123456"));

System.out.println("UUID:"+uuid());

System.out.println("随机数:"+random(1,100));

}

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Java学习
热门Java学习
编程开发子分类