我希望在我的Java程序中具有与此Objective C方法类似的功能,但我不知道在这种情况下如何使用this
(我知道如何仅在构造函数中使用this
)。猜猜我需要覆盖[]运算符?
目标C
public class MyClass{
public int this[int i]{
get{
return index[i];
}
}
private int[] index;
}
朴素的方法是编写常规方法,但是id更喜欢使用this
来节省时间而不键入getIndex
。
爪哇
public class MyClass{
public int getIndex(int i){
return index[i];
}
private int[] index;
}
编辑:好的,所以我无法覆盖[],这是个坏消息,不管怎么说谢谢你们。该死的你。
答案 0 :(得分:0)
您不能在Java中覆盖运算符。这意味着,您无法覆盖+
,-
,[]
或其他类型的运算符。相反,您应该创建将执行所需行为的方法。
答案 1 :(得分:-1)
您无法使用它在Java中创建getter。最好的解决方案是:
public int getIndex(int i){
return index[i];
}