enum Operation {
TURN_LEFT, TRUN_RIGHT, SHOOT; public static void doOperation(Operation operation) {
switch (operation) {
case TURN_LEFT:
System.out.println("向左转");
break;
case TRUN_RIGHT:
System.out.println("向右转");
break; case SHOOT:
System.out.println("射击");
break;
}
}
}public class OpConstant {
public static void main(String[] args) {
Operation.doOperation(Operation.SHOOT);
System.out.println(Operation.valueOf("SHOOT"));
System.out.println("--------------"); for (Operation operation : Operation.values()) {
// System.out.printf("%d, %s, %n", operation);
// System.out.printf("%d, %s, %n", operation);
System.out.printf("%d, %s, %n", operation); //这是第 12 行! }
}}Exception in thread "main" java.util.IllegalFormatConversionException: d != com.enumtest.Operation
at java.util.Formatter$FormatSpecifier.failConversion(Formatter.java:3999)
at java.util.Formatter$FormatSpecifier.printInteger(Formatter.java:2709)
at java.util.Formatter$FormatSpecifier.print(Formatter.java:2661)
at java.util.Formatter.format(Formatter.java:2433)
at java.io.PrintStream.format(PrintStream.java:920)
at java.io.PrintStream.printf(PrintStream.java:821)
at com.enumtest.OpConstant.main(OpConstant.java:12)哪里错了,帮忙看看···谢谢了
这行代码这么写是什么意思?直接写:
System.out.printf("%s,", operation);
System.out.printf("%s, %n, %n", operation);
其实是System.out.printf...那里错,但是我不懂怎么改···