1、错误描述
Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier 's'
at java.util.Formatter.format(Formatter.java:2487)
at java.io.PrintStream.format(PrintStream.java:970)
at java.io.PrintStream.printf(PrintStream.java:871)
at com.you.example.ArrayExample.main(ArrayExample.java:56)
2、错误原因
/**
*
* 项目名称:DABF
* 项目包名:com.you.example
* 文件名称:ArrayExample.java
* 类型名称:ArrayExample
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
* 项目版本:V1.0
*/
package com.you.example;
import java.util.ArrayList;
/**
* 文件名称:ArrayExample.java
* 文件类型:ArrayExample
* 文件包名:com.you.example
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
*/
public class ArrayExample
{
/**
* 方法描述:
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
* 方法名称:main
* 方法类型:ArrayExample
* 返回类型:void
* @param args
*/
public static void main(String[] args)
{
ArrayList<String> strList = new ArrayList<String>();
strList.ensureCapacity(3);
strList.trimToSize();
strList.add(0, "A");
strList.add(1, "B");
strList.add(2, "C");
strList.add(3, "D");
strList.add("E");
for(int i=0;i<strList.size();i++)
{
System.out.println(strList.get(i));
}
int x = Integer.parseInt("34");
System.out.println(Integer.reverse(x));
System.out.printf("%d %s",23);
}
}
打印printf时,“23”是一个数值类型,格式化不能用“%d %s”3、解决办法
/**
*
* 项目名称:DABF
* 项目包名:com.you.example
* 文件名称:ArrayExample.java
* 类型名称:ArrayExample
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
* 项目版本:V1.0
*/
package com.you.example;
import java.util.ArrayList;
/**
* 文件名称:ArrayExample.java
* 文件类型:ArrayExample
* 文件包名:com.you.example
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
*/
public class ArrayExample
{
/**
* 方法描述:
* 创建作者:游海东
* 创建日期:2017-1-7
* 创建时间:下午2:58:36
* 方法名称:main
* 方法类型:ArrayExample
* 返回类型:void
* @param args
*/
public static void main(String[] args)
{
ArrayList<String> strList = new ArrayList<String>();
strList.ensureCapacity(3);
strList.trimToSize();
strList.add(0, "A");
strList.add(1, "B");
strList.add(2, "C");
strList.add(3, "D");
strList.add("E");
for(int i=0;i<strList.size();i++)
{
System.out.println(strList.get(i));
}
int x = Integer.parseInt("34");
System.out.println(Integer.reverse(x));
System.out.printf("%d",23);
}
}