Java 运行扫描程序

Java 运行扫描程序,java,eclipse,Java,Eclipse,我正在尝试编写一个程序,基本上可以读取1000到999999之间的任何整数,然后用逗号分隔数千个整数来显示它。到目前为止,我有这个,eclipse不喜欢它。为什么? /* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the clas

我正在尝试编写一个程序,基本上可以读取1000到999999之间的任何整数,然后用逗号分隔数千个整数来显示它。到目前为止,我有这个,eclipse不喜欢它。为什么?

/* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
// Scanner scan = new scanner(system.in);
double value, integer;
System.out.println("Enter your value without a comma");
integer = scan.nextdouble();
System.out.println(integer,);
scan.close();

至少可以说,您的代码看起来很有问题。首先,您声明扫描器的那一行应该被注释吗?如果不是,那可能是问题的一部分。您应该注意将大写的
System.in
传递给扫描仪。您还需要使用
nextDouble()
方法。(Java是区分大小写的!)在第二个print语句中,您还需要注意执行类似于
System.out.println(integer+“,”)的操作

至少可以说,您的代码看起来很有问题。首先,您声明扫描器的那一行应该被注释吗?如果不是,那可能是问题的一部分。您应该注意将大写的
System.in
传递给扫描仪。您还需要使用
nextDouble()
方法。(Java是区分大小写的!)在第二个print语句中,您还需要注意执行类似于
System.out.println(integer+“,”)的操作

至少可以说,您的代码看起来很有问题。首先,您声明扫描器的那一行应该被注释吗?如果不是,那可能是问题的一部分。您应该注意将大写的
System.in
传递给扫描仪。您还需要使用
nextDouble()
方法。(Java是区分大小写的!)在第二个print语句中,您还需要注意执行类似于
System.out.println(integer+“,”)的操作

至少可以说,您的代码看起来很有问题。首先,您声明扫描器的那一行应该被注释吗?如果不是,那可能是问题的一部分。您应该注意将大写的
System.in
传递给扫描仪。您还需要使用
nextDouble()
方法。(Java是区分大小写的!)在第二个print语句中,您还需要注意执行类似于
System.out.println(integer+“,”)的操作

为什么您对扫描仪实例进行了注释,我也看到了其中的打字错误。编译器将在未初始化的“扫描”对象上引发异常

Scanner scan = new Scanner(system.in);

为什么你评论了扫描器的实例,我也看到了其中的打字错误。编译器将在未初始化的“扫描”对象上引发异常

Scanner scan = new Scanner(system.in);

为什么你评论了扫描器的实例,我也看到了其中的打字错误。编译器将在未初始化的“扫描”对象上引发异常

Scanner scan = new Scanner(system.in);

为什么你评论了扫描器的实例,我也看到了其中的打字错误。编译器将在未初始化的“扫描”对象上引发异常

Scanner scan = new Scanner(system.in);

代码中有很多错误,这就是eclipse不喜欢它的原因;)

举几个例子:

  • 新扫描仪->带大写字母S的扫描仪
  • system.in->与系统相同
请查看下面的代码段,它将正常运行:)


代码中有很多错误,这就是eclipse不喜欢它的原因;)

举几个例子:

  • 新扫描仪->带大写字母S的扫描仪
  • system.in->与系统相同
请查看下面的代码段,它将正常运行:)


代码中有很多错误,这就是eclipse不喜欢它的原因;)

举几个例子:

  • 新扫描仪->带大写字母S的扫描仪
  • system.in->与系统相同
请查看下面的代码段,它将正常运行:)


代码中有很多错误,这就是eclipse不喜欢它的原因;)

举几个例子:

  • 新扫描仪->带大写字母S的扫描仪
  • system.in->与系统相同
请查看下面的代码段,它将正常运行:)


除了Micah answer,我建议您检查用户的输入,以检查1000-999999范围,并重新提示用户输入值,否则将超出范围的用途

System.out.println("Enter your value without a comma");
integer = scan.nextDouble();
while (integer > 999999 OR integer < 1000)
{
      System.out.println("Please keep your range in between 1000 - 999,999");
      integer = scan.nextDouble();
}
System.out.println(“输入不带逗号的值”);
整数=scan.nextDouble();
而(整数>999999或整数<1000)
{
System.out.println(“请将范围保持在1000-999999之间”);
整数=scan.nextDouble();
}

除了Micah answer,我建议您检查用户的输入,以检查1000-999999范围,并重新提示用户输入值,否则将超出范围的用途

System.out.println("Enter your value without a comma");
integer = scan.nextDouble();
while (integer > 999999 OR integer < 1000)
{
      System.out.println("Please keep your range in between 1000 - 999,999");
      integer = scan.nextDouble();
}
System.out.println(“输入不带逗号的值”);
整数=scan.nextDouble();
而(整数>999999或整数<1000)
{
System.out.println(“请将范围保持在1000-999999之间”);
整数=scan.nextDouble();
}

除了Micah answer,我建议您检查用户的输入,以检查1000-999999范围,并重新提示用户输入值,否则将超出范围的用途

System.out.println("Enter your value without a comma");
integer = scan.nextDouble();
while (integer > 999999 OR integer < 1000)
{
      System.out.println("Please keep your range in between 1000 - 999,999");
      integer = scan.nextDouble();
}
System.out.println(“输入不带逗号的值”);
整数=scan.nextDouble();
而(整数>999999或整数<1000)
{
System.out.println(“请将范围保持在1000-999999之间”);
整数=scan.nextDouble();
}

除了Micah answer,我建议您检查用户的输入,以检查1000-999999范围,并重新提示用户输入值,否则将超出范围的用途

System.out.println("Enter your value without a comma");
integer = scan.nextDouble();
while (integer > 999999 OR integer < 1000)
{
      System.out.println("Please keep your range in between 1000 - 999,999");
      integer = scan.nextDouble();
}
System.out.println(“输入不带逗号的值”);
整数=scan.nextDouble();
而(整数>999999或整数<1000)
{
System.out.println(“请将范围保持在1000-999999之间”);
整数=scan.nextDouble();
}

因此,首先,解决方案:

import java.text.NumberFormat;
import java.util.Locale;
import java.util.Scanner;

public class Ideone {

     public static void main(String[] args) {
         Scanner scan = new Scanner(System.in);
         System.out.println("Enter a number:");
         long number = scan.nextLong();
         NumberFormat f = NumberFormat.getInstance(Locale.ENGLISH);
         System.out.println(f.format(number));
         scan.close();
     }

}
代码中的问题:

  • 包声明被注释了,为什么
  • 您可以导入
    java.lang.*
    b