0

我刚刚开始学习和使用java。我尝试创建一个简单的票务程序:

import java.util.Scanner;

public class First {

public static void main(String[] args) {
    String name;
    int v_tickets, g_tickets;
    double vip=1000.00, gen=500.00, total;
    Scanner in=new Scanner(System.in);
    System.out.printf("Enter your name");
    name = in.next();
    System.out.printf("How many VIP tickets do you want?");
    v_tickets = in.nextInt();
    System.out.printf("How many general Tickets do you want?");
    g_tickets = in.nextInt();
    total = (v_tickets*vip)+(g_tickets*gen);
    System.out.printf("Receipt\n Name: %d\n %d VIP %6f\n %d General %6f\n Total %6f",name,v_tickets,v_tickets*vip,g_tickets,g_tickets*gen,total);

} //end main


} //end program

但我不断收到此错误消息:

--------------------Configuration: <Default>--------------------
Usage: java [-options] class [args...]
       (to execute a class)
   or  java [-options] -jar jarfile [args...]
       (to execute a jar file)
where options include:
-d32      use a 32-bit data model if available
-d64      use a 64-bit data model if available
-server   to select the "server" VM
-hotspot      is a synonym for the "server" VM  [deprecated]
              The default VM is server.

-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
              A ; separated list of directories, JAR archives,
              and ZIP archives to search for class files.
-D<name>=<value>
              set a system property
-verbose:[class|gc|jni]
              enable verbose output
-version      print product version and exit
-version:<value>
              require the specified version to run
-showversion  print product version and continue
-jre-restrict-search | -no-jre-restrict-search
              include/exclude user private JREs in the version search
-? -help      print this help message
-X            print help on non-standard options
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
              enable assertions with specified granularity
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
              disable assertions with specified granularity
-esa | -enablesystemassertions
              enable system assertions
-dsa | -disablesystemassertions
              disable system assertions
-agentlib:<libname>[=<options>]
              load native agent library <libname>, e.g. -agentlib:hprof
              see also, -agentlib:jdwp=help and -agentlib:hprof=help
-agentpath:<pathname>[=<options>]
              load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
              load Java programming language agent, see java.lang.instrument
-splash:<imagepath>
              show splash screen with specified image
See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.

Process completed.

我正在使用 JCreator,在“构建输出”下显示“流程已完成”,但没有显示任何错误。但上面的错误是我在“一般输出”下得到的。任何帮助将不胜感激,请记住,我对此很陌生。

4

2 回答 2

2

我没有编译错误。只是运行时异常

你的printf格式不对

System.out.printf("Receipt\n Name: %d\n ...... , name...);

name是字符串而不是数字d

Receipt\n Name: %d\n

应该

Receipt\n Name: %s\n

用于s字符串

除此之外,该程序对我来说运行良好。在我做出改变之前,我会得到

IllegalFormatConversionException: d != java.lang.String

这是有道理的,因为 String 不是数字

于 2014-01-25T15:34:52.233 回答
0

正在向您展示该java命令的用法。只需执行以下操作:

  1. 导航到First.java文件的存储位置。
  2. 键入javac First.java并按 Enter。这将产生一个First.class文件。
  3. 键入java First并按 Enter。请注意,这里没有提到文件扩展名。

请考虑PeeSkillet's answer指出需要对您的程序进行哪些更改。

于 2014-01-25T15:38:10.060 回答