我使用String.format
來創建帶參數的格式化字符串。是否有可能告訴格式化程序重複使用一個參數多次?可以Stringformatter重用參數嗎?
String.format(%s FOO %s %s, "test"); //desired output: "test FOO test test"
我使用String.format
來創建帶參數的格式化字符串。是否有可能告訴格式化程序重複使用一個參數多次?可以Stringformatter重用參數嗎?
String.format(%s FOO %s %s, "test"); //desired output: "test FOO test test"
是的,你可以使用$
符這一點。在$
前面的數字表示參數編號,從1開始:
String.format("%1$s FOO %1$s %1$s", "test")
String.format("%1$s FOO %1$s %1$s", "test");
正如補充Keppils答案: 當你開始編號的你的論點之一,你必須給他們編號的所有,要不然結果將不會如預期的那樣。
String.format("Hello %1$s! What a %2$s %1$s!", "world", "wonderful");
// "Hello world! What a wonderful world!"
會工作。雖然
String.format("Hello %1$s! What a %s %1$s!", "world", "wonderful");
// "Hello world! What a world world!"
將無法正常工作。 (但不會拋出任何錯誤,所以這可能會被忽視。)
Funfact:我今天剛剛搜索了這個,回到我4年前的問題:) – membersound