From f7dfd48eef453c0b2127b93ab3a55579445622c0 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Tue, 17 Mar 2026 17:53:42 +0100 Subject: [PATCH] IDEA-204102 [java]: use diamonds in initializer when replacing 'var' with explicit type GitOrigin-RevId: fb9b55071bcfbc19fea0f56c3ec15dda52fd48ee --- .../quickfix/ReplaceVarWithExplicitTypeFix.java | 15 ++++++++++----- .../quickFix/var2explicit/afterDiamonds.java | 9 +++++++++ .../quickFix/var2explicit/beforeDiamonds.java | 9 +++++++++ 3 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/var2explicit/afterDiamonds.java create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/var2explicit/beforeDiamonds.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ReplaceVarWithExplicitTypeFix.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ReplaceVarWithExplicitTypeFix.java index 94454f92bdcf..d1b8a9ac4b57 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ReplaceVarWithExplicitTypeFix.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/ReplaceVarWithExplicitTypeFix.java @@ -1,6 +1,7 @@ -// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +// Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. package com.intellij.codeInsight.daemon.impl.quickfix; +import com.intellij.codeInspection.RemoveRedundantTypeArgumentsUtil; import com.intellij.codeInspection.VariableTypeCanBeExplicitInspection; import com.intellij.java.analysis.JavaAnalysisBundle; import com.intellij.modcommand.ActionContext; @@ -9,6 +10,7 @@ import com.intellij.modcommand.Presentation; import com.intellij.modcommand.PsiUpdateModCommandAction; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiLambdaExpression; +import com.intellij.psi.PsiLocalVariable; import com.intellij.psi.PsiParameter; import com.intellij.psi.PsiTypeElement; import com.intellij.psi.PsiVariable; @@ -30,17 +32,20 @@ public class ReplaceVarWithExplicitTypeFix extends PsiUpdateModCommandAction x = new ArrayList<>(); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/var2explicit/beforeDiamonds.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/var2explicit/beforeDiamonds.java new file mode 100644 index 000000000000..4594bacb5b2d --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/var2explicit/beforeDiamonds.java @@ -0,0 +1,9 @@ +// "Replace 'var' with explicit type" "true-preview" +import java.util.*; + +class X { + + void x() { + var x = new ArrayList(); + } +} \ No newline at end of file