2016-03-25 11 views
12

Avere il seguente codice:Come posso sopprimere gli avvisi di cast non controllati?

fun doSomething(): List<String> { 

    val test: List<*> = arrayListOf("test1", "test2") 

    return test as List<String> 
} 

C'è qualche modo per eliminare l'avviso getto incontrollato che si apre nell'ultima riga? Ho provato a utilizzare il modo standard Java @SuppressWarnings("unchecked") a livello di metodo, ma non ha funzionato.

Googling mi ha portato anche a this thread, che afferma che la soluzione è di utilizzare @suppress("UNECHECKED_CAST"). Sfortunatamente IntelliJ non conosce l'annotazione @suppress, quindi non funziona (probabilmente perché quella funzione è stata rimossa a un certo punto, dal momento che quel thread ha parecchi mesi).

+0

'@Suppress (" UNCHECKED_CAST ")' funziona correttamente con IDEA 15.0.4. Basta premere Alt + Invio su evidenziato 'test come lista ' e usare * "Sopprimere 'UNCHECKED_CAST' per divertimento doSomething" * – soon

risposta

21

Aggiunta @Suppress("UNCHECKED_CAST") (anche possibile attraverso Alt di IDEA + Enter menu) per qualsiasi dichiarazione, funzione, classe e file di dovrebbe aiutare.

Prima:

enter image description here

Dopo:

enter image description here

@suppress lei ha citato è stato rinominato quando Kotlin cambiato i nomi di annotazione maiuscoli.

Problemi correlati