Hutool-數據類型轉換


import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.CharsetUtil;
import org.junit.Assert;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;

/**
 * 數據類型轉換
 */
public class Demo01 {
    public static void main(String[] args) {
        //1.使用Hutool工具Convert將int類型轉為String類型
        int a = 1;
        String s = Convert.toStr(a);
        System.out.println(s);

        //2.轉換為指定類型數組
        String[] b = {"1","2","3","4"};
        Integer[] integers = Convert.toIntArray(b);
        for (int i = 0; i < integers.length; i++) {
            System.out.println(integers[i]);
        }

        long[] c = {1,2,3,4,5};
        Integer[] arr = Convert.toIntArray(c);
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

        //3.轉換日期對象
        String d = "2017-05-06";
        Date date = Convert.toDate(d);
        System.out.println(date);

        //4.轉換為集合
        Object[] e = {"a","你","好","",1};
        List<?> list = Convert.convert(List.class,e);
        System.out.println(list);  //[a, 你, 好, , 1]
        List<?> list2 = Convert.toList(e);
        System.out.println(list2);  //[a, 你, 好, , 1]

        //5.全角、半角轉換
        String str = "123456789";
        System.out.println(Convert.toSBC(str));

        String str1 = "1 2 3 4 5 6 7 8 9";
        System.out.println(Convert.toDBC(str1));

        //6.Unicode與字符串轉換
        String str2 = "我是一個小小的可愛的字符串";
        System.out.println(Convert.strToUnicode(str2));  //\u6211\u662f\u4e00\u4e2a\u5c0f\u5c0f\u7684\u53ef\u7231\u7684\u5b57\u7b26\u4e32
        System.out.println(Convert.unicodeToStr(Convert.strToUnicode(str2)));   //我是一個小小的可愛的字符串

        //7.編碼轉換
        String str3 = "我不是亂碼";
        String result = Convert.convertCharset(str3, CharsetUtil.UTF_8, CharsetUtil.ISO_8859_1);
        String raw = Convert.convertCharset(result, CharsetUtil.ISO_8859_1, "UTF-8");
        System.out.println(result);    //我不是乱ç
        System.out.println(raw);   //我不是亂碼
        //斷言比較兩個參數是否相同,如果相同的話正常編譯控制台不會出現錯誤信息,如果不相同則控制台輸出錯誤日志
        Assert.assertEquals(raw, str3);

        //8.時間單位的轉換
        //用於轉換時長單位,比如一個很大的毫秒,我想獲得這個毫秒數對應多少分
        long time = 4535345;
        long minutes = Convert.convertTime(time, TimeUnit.MILLISECONDS, TimeUnit.MINUTES);
        System.out.println(minutes);    //75

        //9.金額大小寫轉換
        double dd = 67556.32;
        String money = Convert.digitToChinese(dd);
        System.out.println(money);  //陸萬柒仟伍佰伍拾陸元叄角貳分

        //10.數字轉換
        //(1)數字轉為英文表達
        String number = Convert.numberToWord(100.23);
        System.out.println(number);
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM