Вопрос

I am just beginning to learn and use java. I tried creating a simple ticket program:

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

But I keep getting this error message:

--------------------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.

I am using JCreator and under 'Build Output' it says 'Process Completed' and it's not showing me any errors. But the error above is what I'm getting under 'General Output'. Any help would be appreciated with this and remember, I am very new at this.

Это было полезно?

Решение

I get no compile errors. Just Runtime exception

Your printf format is wrong

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

name is a String not a number d

Receipt\n Name: %d\n

Should be

Receipt\n Name: %s\n

The s is for String

Other than that, the program runs fine for me. Before I made the change, I would get

IllegalFormatConversionException: d != java.lang.String

Which makes sense because String is not a number

Другие советы

You are being shown the usage of the java command. Just do as follows:

  1. Navigate to where your First.java file is stored.
  2. Type javac First.java and hit enter. This will yield a First.class file.
  3. Type java First and hit enter. Notice that there is not file extension mentioned here.

Please do consider PeeSkillet's answer pointing out what changes need to be made to your program.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top