2013-03-22 10 views
36

C'è un modo per trasformare automaticamente questa chiamata di metodo statico (Arrays.asList):Eclipse: trasformare chiamata di metodo statico a un importazione statica

import java.util.Arrays; 
import java.util.List; 

public class StaticImport { 
    public static void main(String[] args) { 
     List<String> list = Arrays.asList("hello", "world"); 
     System.out.println(list); 
    } 
} 

a questa invocazione utilizzando un static import: Ho

import static java.util.Arrays.asList; 

import java.util.List; 

public class StaticImport { 
    public static void main(String[] args) { 
     List<String> list = asList("hello", "world"); 
     System.out.println(list); 
    } 
} 

so che posso configurare il completamento del codice usando questo Window » Preferences » Java » Editor » Content Assist » Favorites come descritto in this answer.

La mia domanda riguarda la trasformazione di una chiamata di metodo statica esistente. Idealmente, mi piacerebbe non dover configurare una "importazione preferita".

+0

vedere questo: http://stackoverflow.com/questions/288861/eclipse-optimize-imports-to-include-static-imports – lichengwu

+0

@lichengwu aggiorno la mia risposta – gontard

risposta

78

Posizionare il cursore sul nome del metodo (asList) e premere Ctrl-Shift-M.

Questa è la scelta rapida da tastiera predefinita per il comando "Aggiungi importazione". Puoi anche trovare il comando nel menu 'Origine'.

+2

Grazie! Oro degno! – displayname

+0

Grazie! ma se ha molti 'Arrays.asList', rimuove solo' Array 'di questa linea del cursore corrente. – zhuguowei

+0

@zhuguowei, pasticcio! :( –