java MessageFormat來生成模板字符串


1.前言

在java程序中,我們經常會遇到生成模板字符串的場景,一般來說我們實現需求是這樣的 

        String name = "Bob";
        StringBuilder sb = new StringBuilder();
        sb.append("您好").append("我是").append(name);
        System.out.println(sb.toString());//您好我是Bob

2.更好的方法

有一種更好的方法

        String helloStr = MessageFormat.format("您好,我是{0}", name);
        System.out.println(helloStr);//您好,我是Bob

直接使用MessageFormat替換變量即可,和printf方法類似,不用在用StringBuilder無腦拼接字符串,代碼也簡潔很多.

        String helloStr = MessageFormat.format("您好,我是{0},我今年{1,choice,1#一|2#二|{2}}歲", name,1);
        System.out.println(helloStr);//您好,我是Bob,我今年一歲

 

而且MessageFormat還提供了格式化選項  choice,可以根據不同的參數選擇不同的數據,我{1}的參數設置的是1,所以就選擇了一,如果是3就會選擇{2}歲,會再次進行替換.

非常方便!

 


免責聲明!

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



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