如何使用System.arraycopy?

时间:2011-10-15 18:00:48

标签: java

我想从txt文件中读取并使用System.arraycopy进行复制 parts[]scores[]

我知道scores必须是String才能工作。我的 构造函数必须是int[]的{​​{1}}数组。因此scoresscores。有没有解决方案?

int[]

这是我的构造函数:

private void processLine(String line) {

String mygoden1 = "";
//String mygoden2 = "";

try {
    String parts [] = line.split(",");

    mygoden1= parts[0];

    Name name = new Name(parts[1]);

    int gN1=Integer.parseInt(mygoden1);

    String gL= parts[3];
    //gL = gL.trim();

    String gC = parts[4];
    gC=gC.trim();

    int scoresLength = parts.length-4;
    String scores[]=new String[scoresLength];       

    System.arraycopy(parts,4,scores, 0, scoresLength);

    Gamer g1 = new Gamer(gN1 ,name,scores, gL, gC);

    this.add(g1);
}

2 个答案:

答案 0 :(得分:1)

当您需要转换数据时,请勿使用System.arraycopy。迭代每个元素的partsparseInt(),然后将其存储在scores

答案 1 :(得分:0)

我会替换

String scores[]=new String[scoresLength];       

System.arraycopy(parts,4,scores, 0, scoresLength);

int[] scores = new int[scoresLength];
for(int i = 0; i < scoresLength; i++)
   scores[i] = Integer.parseInt(parts[i + 4]);
相关问题