首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将一个值通过一个参数传递给我的程序意味着什么?

将一个值通过一个参数传递给我的程序意味着什么?
EN

Stack Overflow用户
提问于 2020-07-17 06:59:15
回答 3查看 65关注 0票数 0

我最近做了一个post,说我的代码不能工作,并显示了以下消息:

代码语言:javascript
运行
复制
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at FactorialProgram5.main(FactorialProgram5.java:11)

使用以下代码:

代码语言:javascript
运行
复制
import java.util.Scanner;

public class FactorialProgram5 {

    public static void main(String args[]) {
        long n;
        long fact = 1;
        n = 1;
        
        for (int i = 1; i <= n; i++) {
            n = Long.parseLong(args[0]);
            fact = fact * i;
        }

        System.out.print("fact=" + fact);
    }
}

有人说我必须向它传递参数,而数组是空的。将参数传递给代码意味着什么?我正在使用eclipse,有人告诉我必须转到arguments选项卡并手动输入值,但我需要这样做,这样我也可以在命令提示符中使用此代码。我该怎么做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-07-17 07:17:22

您的main方法是从命令行获取任何参数的方法。例如,如果您首先在命令行上导航到java文件的位置:键入以下命令。1.javac filename.java这将编译你的.java文件2. java filename (如果你想不带参数运行)。要将参数传递给您的文件,请使用:java filename argument

在这里,参数被转换为字符串数组( main方法中的args)。

因此,当这个文件被编译,然后使用类似命令java filename 99的命令运行时,代码中的n=Long.parseLong(args[0]);行将把数字99插入到args中。因此,n将被设置为99,或者您每次运行此程序时在命令行上的java filename之后输入的任何内容。

票数 1
EN

Stack Overflow用户

发布于 2020-07-17 07:08:59

这家伙说的是,在运行java程序的时候,你可以在命令行中输入参数,就像这样:

代码语言:javascript
运行
复制
<run-java-using-a-command> Bob Joe Bill

我省略了实际的运行,因为如果你打算使用eclipse,那是不必要的。但是如果像这样运行,那么args数组将是这样的:

代码语言:javascript
运行
复制
[Bob, Joe, Bill]

你可以在你的程序中使用这些参数。在Eclipse中,您可以做的是单击Run | Run | Program Arguments (屏幕顶部)来编辑参数。

票数 0
EN

Stack Overflow用户

发布于 2020-07-17 20:03:21

这意味着您需要在命令行中添加一个参数,以便您的程序能够找到并处理它。我在本例中使用的参数是数字3。

我已经在命令行上编译并运行了您的程序,以显示它是如何工作的。

代码语言:javascript
运行
复制
$ javac FactorialProgram5.java
$ java FactorialProgram5 3    
fact=6
$

注意:我在print指令中添加了一个缺少的换行符

代码语言:javascript
运行
复制
System.out.print("fact=" + fact);

变成了

代码语言:javascript
运行
复制
System.out.print("fact=" + fact + "\n");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62944704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档