1

ここに問題があります: 引数として 3 つの int [] があり、それらを操作する関数に渡す必要があります。args[] は次のとおりです。

 1: {14,14,17,17,14,12,13,11,12}
 2: {74,34,57,67,34,42,53,61,22}
 3: {24,24,12,21,29,14,21,17,12}

ソースのアイデアについて:

public class Main {
    public static void main(String[] args) {
        System.out.println("amount: " + args.length);
        int[] intArray = new int[args.length];
        for(int i=0;i<args.length;i++)
             intArray[i]=Integer.valueOf(args[i]);
        int[] statica= intArray[0];
        int[] inserta= intArray[1];
        int[] reservea= intArray[2];

    GraphicConsts.getSvgStylTotalamount();
    InputValues inputValues = new InputValues(statica, inserta, reservea);
    inputValues.init();
}

}

入力値:

public class InputValues {

private int[] staticamount; 

public int[] insertamount;

private int[] reserveamount;

private int[] totalamount=new int[]{};
private int[] depositDF=new int[]{};
private int[] depositelse=new int[]{};

public InputValues(int statica, int inserta, int reservea) {

// TODO Auto-generated constructor stub
}
    public void init() {

// AUTO generated setters und getters

}

このすべてが FOPConverter を通過しますが、その部分は機能しています。次のように配列をハードコードすると、このすべてが機能します

private int[] staticamount= new int[]{14,14,17,17,14,12,13,11,12};  

しかし、それらを引数にする必要があります。

何か案は?前もって感謝します。

4

2 に答える 2

1

私があなたの言うことを正しく理解しているなら、あなたは各引数がリストとして使われる3つの引数だけを使いたいと思うでしょう。そうですね、GSONパッケージを使用して、単一の文字列のように引数を渡すことができます。次に例を示します。

入力:

arg1:[14,14,17,17,14,12,13,11,12]

arg2:[74,34,57,67,34,42,53,61,22]

arg3:[24,24,12,21,29,14,21,17,12]

import java.lang.reflect.Type;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
....
public static void main(String[] args) {

....

Type collectionType = new TypeToken<int[]>(){}.getType();

int[] festmengeNew1 = gson.fromJson(args[0], collectionType); 
int[] festmengeNew2 = gson.fromJson(args[1], collectionType); 
int[] festmengeNew3 = gson.fromJson(args[2], collectionType); 
....
}

ご覧のとおり、3つのパラメーターを文字列として入力し、のリストに変換しましたint。それがあなたを助けるとしましょう

于 2012-10-19T08:05:03.263 に答える
0

main(String args[]) には常に String 型の配列が必要です。要件のように、配列の配列を渡すことはできません。したがって、できることは、各配列をカンマ区切りの文字列として渡し、各文字列を区切り文字「,」で分割することです。配列を取得できます。

于 2012-10-19T07:54:23.223 に答える