当前位置: 首页 > 知识库问答 >
问题:

使用int代替字符串:public static void main(int[]args)

高运诚
2023-03-14

我的印象是main方法必须具有“public static void main(string[]args){}”的形式,您不能传递int[]参数。

但是,在windows命令行中,当运行下面的.class文件时,它同时接受int和string作为参数。

例如,使用此命令将给出输出“stringers”:“java IntArgsTest stringers”

public class IntArgsTest 
{
    public static void main (int[] args)
    {

        IntArgsTest iat = new IntArgsTest(args);

    }

    public IntArgsTest(int[] n){ System.out.println(n[0]);};

}

共有1个答案

闻人嘉木
2023-03-14

传入main方法的所有内容,也就是JVM用来启动程序的方法,都是一个字符串。它看起来像int 1,但实际上是字符串“1”,这是一个很大的区别。

现在使用您的代码,如果您尝试运行它会发生什么?当然,它可以很好地编译,因为它是有效的Java,但是您的主方法签名与作为程序起点的JVM所需的签名不匹配。

要运行代码,您需要添加一个有效的main方法,

public class IntArgsTest {
   public static void main(int[] args) {

      IntArgsTest iat = new IntArgsTest(args);

   }

   public IntArgsTest(int[] n) {
      System.out.println(n[0]);
   };

   public static void main(String[] args) {
      int[] intArgs = new int[args.length];

      for (int i : intArgs) {
         try {
            intArgs[i] = Integer.parseInt(args[i]);
         } catch (NumberFormatException e) {
            System.err.println("Failed trying to parse a non-numeric argument, " + args[i]);
         }
      }
      main(intArgs);
   }
}
 类似资料:
  • 问题内容: 我的印象是main方法必须具有“ public static void main(String [] args){}”形式,您不能传递int []参数。 但是,在Windows命令行中,当运行以下.class文件时,它接受int和string作为参数。 例如,使用此命令将给出输出“ stringers”:“ java IntArgsTest stringers” 我的问题是,为什么?为

  • 我只是无法在c中转换不同的数据类型,我知道c是一种强类型语言,所以我在这里使用了,但我面临一个问题,错误消息是 从“std::string{aka std::basic_string}类型转换为“int”类型的static_

  • 问题内容: 该应用程序基本上通过输入初始速度和最终速度以及时间来计算加速度,然后使用公式来计算加速度。但是,由于文本框中的值是字符串,所以我无法将它们转换为整数。 问题答案: 基本概念, 请注意,这仅在Swift 1.x中有效 Swift 4更新

  • 我有代码: 首先,它接受给定的字符串并拆分为数组。接下来,每个数字都被转换成一个整数,最后,所有的数字都相互相加。它工作得很好,但代码有点长。所以我想到了在使用reduce的同时使用map函数并将String转换为Int,如下所示: 输出为: 因此,我的问题是:为什么我不能在使用reduce()时将字符串转换为整数?

  • 注意:这个问题包含不建议使用的前1.0代码!不过,答案是正确的。 要在Rust中将转换为,我可以执行以下操作: 我知道如何将转换为的唯一方法是获取其中的一个片段,然后像这样使用: 有没有办法直接将转换为?

  • 我想将MongoDB值字段的字符串转换为整数,然后计算平均值。 这是我的JSON: 但我也得到了这样的输出: {“_id”:ObjectId(“5C509604FC007808C427EDCB”),“values”: [“24.3”,“23.3”,“25.3”,“31.3”,“90.3”],“avgvalue”:null} 期望值应该是values字段的平均值。 我需要对嵌套文档值进行某种转换。