“Java String 格式化”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第19行: 第19行:
 
ab
 
ab
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
 +
 +
  
 
=== 参数个数小于占位符个数示例 ===
 
=== 参数个数小于占位符个数示例 ===

2022年12月7日 (三) 00:36的版本

参数个数等于占位符个数示例

public class Test2 {

    public static void main(String[] args) {

        String format = "%1$s%2$s";

        String[] strArr = {"a", "b"};

        String ret = String.format(format, strArr);

        System.out.println(ret);

    }

}
ab



参数个数小于占位符个数示例

public class Test1 {

    public static void main(String[] args) {

        String format = "%1s$%2s$";

        String[] strArr = {"a"};

        String ret = String.format(format, strArr);

        System.out.println(ret);

    }

}
Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier '%2s'
	at java.base/java.util.Formatter.format(Formatter.java:2672)
	at java.base/java.util.Formatter.format(Formatter.java:2609)
	at java.base/java.lang.String.format(String.java:2897)
	at org.example.stringformat.Test1.main(Test1.java:11)