Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to suppress "Can be replaced with foreach call" warning

I'm using Java 8 with Android Studio and Retrolambda plugin to compile lambdas to anonymous classes (because Java 8 is not supported on Android). The IDE shows me warnings (or tips) how to change my code to use all the features of Java 8. One of these features is "Can be replaced with foreach call" when you loop over collection. I want to suppress this kind of warning, but I can't figure out how to do this.

The simplest solution to suppress this kind of warning is the @SuppressWarnings("all") annotation. But I want to be warned about different types of warnings so this is not the solution.

Is there any way to disable this kind of warning for entire IDE or just for the code block (something like @SuppressWarnings("foreach"))?

like image 577
tomrozb Avatar asked Apr 17 '14 07:04

tomrozb


People also ask

What is @SuppressWarnings Rawtypes?

If you choose to put @SuppressWarnings("rawtypes") at the method level, Eclipse will suppress all raw-types warnings inside that method. If we compile same code without @SuprressWarnings, using javac compiler it will show the following hint: $ javac RawType.

What is @SuppressWarnings unused?

The @SuppressWarnings annotation disables certain compiler warnings. In this case, the warning about deprecated code ( "deprecation" ) and unused local variables or unused private methods ( "unused" ).

How do you supress a warning?

Use of @SuppressWarnings is to suppress or ignore warnings coming from the compiler, i.e., the compiler will ignore warnings if any for that piece of code. 1. @SuppressWarnings("unchecked") public class Calculator { } - Here, it will ignore all unchecked warnings coming from that class.


1 Answers

One way is to configure your intention settings (I'm assuming this is doable with Android Studio, I'm an IntelliJ user).

For this specific intention:

  • put your cursor on the "for" keyword
  • press "alt+enter" (or maybe "option+enter" or something like that on a mac).
  • press the right arrow, select "edit inspection profile setting" and turn it off or customise to your liking

screenshot of inspection edit option from quick-fix

like image 179
Shorn Avatar answered Oct 26 '22 02:10

Shorn