boolean (PsiMethodCallExpression qualifierCall) { final PsiExpression[] argumentExpressions = qualifierCall.getArgumentList().getExpressions(); if (argumentExpressions.length == 1) { PsiType type = argumentExpressions[0].getType(); if (type instanceof PsiArrayType) { PsiType methodType = qualifierCall.getType(); // Rule out cases like Arrays.<String[]>asList(stringArr) if (methodType instanceof PsiClassType) { PsiType[] parameters = ((PsiClassType)methodType).getParameters(); if (parameters.length == 1 && TypeConversionUtil.isAssignable(parameters[0], type) && !TypeConversionUtil.isAssignable(parameters[0], ((PsiArrayType)type).getComponentType())) { return false; } } return true; } } return false; }