从另一个类引用数组

时间:2014-01-20 09:36:50

标签: java arrays

我试图找出在另一个类中引用一个数组并且有很多乐趣。谁能帮忙..?这是代码。

据我所知,getter getName正在为字符串工作,但我不知道如何使用getter引用数组aff_array[] get afz()

public class aff_array { String name; aff_array[] afz;

public aff_array[] getAfz() {
return afz;
}

public String getName() {
return name;
}

 public static void main (String[] args) {

    int z = 3; //total no of affirmations
    int x = 1;
    aff_array[] afz = new aff_array[z];  //dim

    while ( x < z ) {
        afz[x] = new aff_array();  // create objects for array
        x = x + 1;
    }

    afz[1].name = "i am the best";
    afz[2].name = "you are the rest";

}

这是另一个类,我希望数组值用aff_array.class.getName()替换aff_array[] getAfz(),但我不知道如何做或参考afz(1)例如getName正在工作)

 public void onReceive(Context context, Intent intent)
{

    setNotification(context, aff_array.class.getName());
    WakeLocker.acquire(context);
    Toast.makeText(context,"One shot alarm received. No more toasts will be shown.", Toast.LENGTH_SHORT).show();
    WakeLocker.release();
}

5 个答案:

答案 0 :(得分:1)

怎么样:

public String getAfz(int i) {
  return aff_array[i];
}

答案 1 :(得分:0)

你只需要做:

aff_array instance = new aff_array();
// set the array inside it
setNotification(context, instance.getAfz()[0].getName());

在相同的实例instance上访问数组之前,需要填充数组。

答案 2 :(得分:0)

看起来你想要它static。在这种情况下,您应该将数组声明为:

private static aff_array[] afz;

public static aff_array[] getAfz() {
    return afz;
}

然后您可以按如下方式访问数组:

setNotification(context, aff_array.getAfz()[1].getName());

请注意:

aff_array.class.getName() 调用您的自定义getName()方法。它正在调用java.lang.Class.getName()

要调用自定义getName(),您应该调用aff_array.getName() (如果是静态的)myArray.getName()其中myArrayaff_array的实例

答案 3 :(得分:0)

aff_array mainArray = new aff_array();  mainArray。 AFZ(0).getName(); 你可以这样做

答案 4 :(得分:0)

getAfz()方法返回一个完整的数组,但由于你需要一个数组中的特定条目,你可以初始化该数组然后引用它:

    aff_array aa = new aff_array();
    String name = aa.afz[1].getName(); // reference this in your setNotification

或者,您可以创建一个返回数组内特定对象的方法:

    public aff_array[] getAfz(int i) {
        return add_array[1];
    }