首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >具有数组索引的调用方法

具有数组索引的调用方法
EN

Stack Overflow用户
提问于 2019-06-27 01:53:33
回答 1查看 67关注 0票数 -1

我有这样的练习:

public class Test2 {

    public static void main (String [] args){
        int index=1;
        getArray()[index=2]++; //why???
 }

    public static int[] getArray() {
        return null;
    }

}

在我看来,要调用静态方法getArray,必须编写:

getArray(); ...没有索引!

我认为这段代码有一个编译器错误。

你能给我解释一下为什么getArray() [index =2]++;编译没有错误吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-27 01:57:07

让我们一步一步来:

这个方法应该返回一个int的数组,然后在索引2处访问数组,访问的结果(一个int值)可以递增,是的,你可以分配一个变量,并在同一语句中使用它作为数组索引,(whateverArray[2]++)

  • and

因此,这都是合法的语法。当然,在运行时,您最终会得到一个空指针异常。

编译器可以知道该方法返回null,但是标准javac并不关心这些细微的细节(对于方法结果)。任何像样的IDE都会立即告诉您,这段代码在执行时会崩溃。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56778551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档