我正在学习Java Core,遇到了帮助我的这段代码,我知道此方法的结果,但无法真正理解这里发生的情况: 我运行带有参数(12345,8)的方法,结果得到“ 12345 ___”(带空格,总字符串长度为8个字符)
public static String padRight(String input, int length) {
if (input.length() < length) {
return String.format("%1$-" + length + "s", input); // %1$ refers to the first substitution.
} else {
return input.substring(0, length);
}
}
%1 $ 在这里是指逗号之后的第一个参数,即“输入”
$之后--这是什么?结果将是左对齐的。是否要对齐到左边框?
这里的“ s”是什么?
请说明是否有人完全理解。
我使用的来源: https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html https://dzone.com/articles/java-string-format-examples