简单的Java函数来创建一个数组

时间:2014-12-07 23:54:38

标签: java arrays function

我目前正在开发一个执行多个不同功能的程序,但它们都在同一个数组上(由命令行参数组成)。

我正在尝试创建一个将创建数组的函数。目前,我必须在main()的每个if语句中反复输入以下内容:

 final int N = args.length;    
 final long []a = new long [args.length];
 for (int i = 0; i < N; ++i) 
   a[i] = Long.parseLong (args[i]);

当然,我可以把它放在一个我可以在一行内调用的函数中,而不是一遍又一遍地使用它?

任何建议都将不胜感激!

3 个答案:

答案 0 :(得分:1)

尝试:

public long[] methodName(String[] args){
    final int N = args.length;    
    final long[] a = new long [N];
    for (int i = 0; i < N; ++i) 
        a[i] = Long.parseLong (args[i]);
    return a;
}

答案 1 :(得分:1)

您需要创建一个static函数,这样您就可以在不创建对象的新实例的情况下调用它。

static long[] getValues(String[] args){
    long []a = new long [args.length];
    for (int i = 0; i < args.length; ++i) 
        a[i] = Long.parseLong (args[i]);
    return a;
}

void main(String[] args){
    long[] values = getValues(args); 
    //here you call the static function
    //do some code magic with those values
}

答案 2 :(得分:-1)

使用System.arraycopy(args, 0, a, 0, args.length);

请参阅here