0

我不知道该怎么做,这是我尝试过的:

public class Mage{
    private int hp;
    private int mp;
    private String type;
    private String weakness;
    private int numSpell;//the input will tell you how long the array will be
    public Mage(int ihp, int imp, String itype, String iweakness, int inumSpell, String[] ispells){
        hp=ihp;
        mp=imp;
        type=itype;
        weakness=iweakness;
        private String[] spells = new String[inumSpell];
        for(int i=0;i<ispells.length;i++){
            spells[i]=ispells[i];
        }
    }
}

你会认为我的猜测是正确的吗?任何帮助将不胜感激,谢谢。

4

2 回答 2

3

尽管您正在做的事情看起来有点奇怪,因为您可以简单地执行 ispells.length 来获取法术数量,而不是为此目的传递另一个 int。无论如何,这是您应该根据原始代码执行的操作:

(您的代码的简化版本)

public class Mage {
    private String[] spells;

    public Mage(int noOfSpells, String[] ispells) {
        spells = new String[noOfSpells];
        for (......) {
             // your for loop to copy from ispells to spells
        }
    }
}
于 2012-11-28T04:26:39.977 回答
0

在该字段中,它看起来像:private int[] numSpell;您缺少括号。

于 2012-11-28T04:33:24.340 回答