2017-04-17 73 views
0

我正在使用任何字符串的動態值替換動態參數。動態參數在替換時替換單個值

我已經使用以下代碼:

public static String setDynamicParameter(String text,Object[] values){ 
    MessageFormat messageFormat = new MessageFormat(text); 
    return messageFormat.format(values); 
} 

public static void main(String [] args) { 
    String text = "Test message 'test'"; 
    System.out.println(setDynamicParameter(text, null)); 
} 

在上面的代碼我不使用用於測試目的的任何動態參數。

OUTPUT : Test message test 

我面臨的問題是:它取代了單個的「

爲什麼它取代單引號?

+0

因爲引用是MessageFormat的轉義字符。只需閱讀其文檔。你需要加倍報價。 –

回答

0

這是從MessageFormat documentation

在一個字符串中,一對單引號的可用於引用除了單引號的任意字符。例如,模式字符串「'{0}'」代表字符串「{0}」,而不是FormatElement。單引號本身必須在整個字符串中用雙引號「'表示。