我在我的 Eclipse 软件中遇到了这种类型的错误:问题为什么我会收到错误消息?代码 : package loops; public class Escapey { public static void main(String[] args) { String name ="micheal"; System.out.printf("i am %s, my friend name also %s",name); } }错误信息:线程“main”中的异常 java.util.MissingFormatArgumentException:java.base/java.util.Formatter.format(Formatter.java:2672) at java.base/java.io.PrintStream.format( PrintStream.java:1053) 在 java.base/java.io.PrintStream.printf(PrintStream.java:949) 在 loops.Escapey.main(Escapey.java:5)输出除外:(
3 回答
倚天杖
TA贡献1828条经验 获得超3个赞
您可以指定参数两次,或者在格式字符串中引用时指定索引:
System.out.printf("i am %1$s, my friend's name also %1$s", name);
Helenr
TA贡献1780条经验 获得超4个赞
通过有%s两个printf期望two参数
喜欢
System.out.printf("i am %s, my friend's name also %s",name, name);
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
一种解决方案,
System.out.print("i am " + name + ", my friend name also " + name); // If you want to continue on same line
System.out.println("i am " + name + ", my friend name also " + name); // If you want to continue on next line
由于您有两个%s,因此需要两个参数,因此您可以指定两个参数。
System.out.printf("i am %s, my friend name also %s",name, name);
或者在字符串中指定一个索引。%1$s将得到第一个参数,在这种情况下name。
System.out.printf("i am %1$s, my friend's name also %1$s", name);
添加回答
举报
0/150
提交
取消
