最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)無符號數(shù)轉(zhuǎn)換、字符串補齊、md5、uuid、隨機數(shù)示例

 更新時間:2014年04月30日 09:14:58   作者:  
這篇文章主要介紹了java實現(xiàn)無符號數(shù)轉(zhuǎn)換、字符串補齊、md5、uuid、隨機數(shù)示例,需要的朋友可以參考下



復(fù)制代碼 代碼如下:

package com.hongyuan.test;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Random;
import java.util.UUID;


/*
 * 雜項(無符號數(shù)轉(zhuǎn)換,字符串補齊,md5,uuid,隨機數(shù))
 */
public class SundryTest {

 //轉(zhuǎn)成無符號數(shù)
 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(      //轉(zhuǎn)成16進制數(shù) 
         (Integer)toUnsignedNumber(message[i])), //轉(zhuǎn)成無符號數(shù)
       "0",2).toUpperCase());       //轉(zhuǎn)成大寫
   }
  } catch (NoSuchAlgorithmException e) {
   throw new RuntimeException("不存在md5服務(wù)!");
  }
  return sb.toString();
 }
 //UUID
 public static String uuid(){
  return UUID.randomUUID().toString().replaceAll("-","").toUpperCase();
 }

 //隨機數(shù)(包括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("無法處理一個不合法的數(shù)字區(qū)間!");
  }

 }

 public static void main(String[] args){
  System.out.println("MD5(123456):"+md5("123456"));
  System.out.println("UUID:"+uuid());
  System.out.println("隨機數(shù):"+random(1,100));
 }

}

相關(guān)文章

  • Java泛型最全知識總結(jié)

    Java泛型最全知識總結(jié)

    面試被問到Java泛型怎么辦,有了這篇文章,讓你直接保送,文中有非常詳細的知識總結(jié)及相關(guān)代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java枚舉類接口實例原理解析

    Java枚舉類接口實例原理解析

    這篇文章主要介紹了Java枚舉類接口實例原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • 一文帶你弄懂Maven拉包(拉取依賴包)原理

    一文帶你弄懂Maven拉包(拉取依賴包)原理

    業(yè)務(wù)需求開發(fā)的時候,我們總是會遇到拉不到依賴包的情況,此時如果不清楚 Maven 拉取依賴包的原理,那么很可能找不到問題所在,今天小編就帶大家了解下 Maven 拉包的原理,讓你在遇到問題的時候能快速解決,需要的朋友可以參考下
    2023-07-07
  • java讀取文件顯示進度條的實現(xiàn)方法

    java讀取文件顯示進度條的實現(xiàn)方法

    當讀取一個大文件時,一時半會兒無法看到讀取結(jié)果,就需要顯示一個進度條,是程序員明白已經(jīng)讀了多少文件,可以估算讀取還需要多少時間,下面的代碼可以實現(xiàn)這個功能
    2014-01-01
  • 新建springboot項目時,entityManagerFactory報錯的解決

    新建springboot項目時,entityManagerFactory報錯的解決

    這篇文章主要介紹了新建springboot項目時,entityManagerFactory報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 關(guān)于對Java正則表達式"\\"的理解

    關(guān)于對Java正則表達式"\\"的理解

    正則表達式中,\代表轉(zhuǎn)義字符,通常是轉(zhuǎn)義一些特殊字符,下面這篇文章主要給大家介紹了關(guān)于對Java正則表達式"\\"的相關(guān)理解,需要的朋友可以參考下
    2022-09-09
  • IDEA 2020.1 for Mac 下載安裝配置及出現(xiàn)的問題小結(jié)

    IDEA 2020.1 for Mac 下載安裝配置及出現(xiàn)的問題小結(jié)

    這篇文章主要介紹了IDEA 2020.1 for Mac 下載安裝配置及出現(xiàn)的問題小結(jié),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • mybatis使用xml進行增刪改查代碼解析

    mybatis使用xml進行增刪改查代碼解析

    這篇文章主要介紹了mybatis使用xml進行增刪改查代碼解析,分享了相關(guān)配置和代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • SpringBoot+MinIO實現(xiàn)文件切片極速詳解

    SpringBoot+MinIO實現(xiàn)文件切片極速詳解

    在現(xiàn)代Web應(yīng)用中,文件上傳是一個常見的需求,尤其是對于大文件的上傳,如視頻、音頻或大型文檔,所以本文就來為大家介紹一下如何使用Spring Boot和MinIO實現(xiàn)文件切片極速上傳技術(shù)吧
    2023-12-12
  • java File類重要方法以及如何操作文件詳解

    java File類重要方法以及如何操作文件詳解

    這篇文章主要為大家介紹了java File類重要方法以及如何操作文件詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06

最新評論

平谷区| 崇州市| 安义县| 新源县| 永寿县| 微山县| 石泉县| 历史| 云和县| 宁夏| 阳曲县| 江西省| 平潭县| 长春市| 宁波市| 颍上县| 集安市| 神池县| 巴林左旗| 夏邑县| 措勤县| 色达县| 察雅县| 屏边| 分宜县| 西乌珠穆沁旗| 宝坻区| 板桥市| 白城市| 平定县| 泽普县| 唐海县| 福贡县| 内江市| 丹寨县| 常州市| 宜君县| 鄱阳县| 沿河| 万荣县| 凤凰县|