如何理解java的这种方法,有两种get方法连在一起

对象.get( ).getId( )==id 如何理解这条程序语句
如何理解java的这种方法,有两种get方法连在一起

4个回答

这种基本是list集合用的,,比如List中放一个User对象,,通过list.get(0).getId();这个指的就是取出list集合中的第一个对象的Id属性






 第一个get返回一个对象,它包含第二个方法,比如
class A
{
    public int getid()
        {
            return 1;
        }
        public A get()
        {
            return this;
        }
}
调用
A a = new A();
int i = a.get().getid();

你可以点击第一个get进去看一下源码,看他返回的是什么就能理解了,一般情况下,如果不懂的就去找他的实现源码,这样有助于你理解程序的含义。通常,没有人能够根据几句孤立的代码就能猜出用意。【如果是 类名.get().getId()这样的语句的话还好理解,可能是原来的开发人员写了单例模式,通过get拿到具体实例,但 对象.get()这种的话,建议看源码吧】。

通常情况下,这种情况都是第一个get里边的数据是对象的属性,但它自己又是一个子对象,具有若干属性,而第二个对象里面的数据则是这个子对象的属性,getid内部又是一个对象,同事它又是那个子对象的子对象,它有个id属性。
所以 a.get(b ).getId(c)==d 的意思就是从a对象找出比对象中的c对象的id属性赋值为d

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!