PsiType () { PsiType arrayType = getArrayExpression().getType(); if (!(arrayType instanceof PsiArrayType)) return null; final PsiType componentType = ((PsiArrayType)arrayType).getComponentType(); if (PsiUtil.isAccessedForWriting(this)) return componentType; return PsiUtil.captureToplevelWildcards(componentType, this); }