Gibt es in IntelliJ eine einfachere Möglichkeit, Methoden innerhalb einer Klassenquelldatei neu anzuordnen, als den Code manuell auszuschneiden und einzufügen? Heutzutage brauche ich dies oft beim Umgestalten von Legacy-Code, z. B. um verwandte Methoden im Quellcode nahe beieinander zu verschieben.
In Eclipse AFAIK gibt es eine Ansicht ähnlich der Strukturansicht von IntelliJ, in der ich Methoden per Drag & Drop verschieben kann. Dies funktioniert jedoch nicht in IntelliJ und ich konnte auch keine Hinweise aus seiner Hilfe finden.
Ich verwende IntelliJ 9.0.2, um genau zu sein.
java
refactoring
methods
intellij-idea
Péter Török
quelle
quelle
Antworten:
Sie können einen Methodennamen auswählen und drücken: Ctrl+ Shift+ Upoder Ctrl+ Shift+ Down, um ihn auf und ab zu bewegen.
Unter OS X: Cmd+ Shift+ Upoder Cmd+ Shift+Down
Darüber hinaus können Sie mit dem Rearranger-Plugin Methoden schnell verschieben und sogar eine Standardreihenfolge basierend auf Ihrer Codierungskonvention definieren.
quelle
Code > Move Statement Up/Down
Aufgrund eines Fehlers in IntelliJ noch keine perfekte Antwort .
IntelliJ bietet diese Funktion zwar implizit an, sie muss jedoch sowohl aktiviert als auch behoben werden. Der vom OP vorgeschlagene Weg besteht darin, Methoden technisch in der Reihenfolge erster Tiefe anzuordnen. Wenn Sie jedoch die Reihenfolge der Breite zuerst verwenden (was ordnungsgemäß funktioniert), sollte dies die manuelle Arbeit beim Verschieben von Funktionen erheblich reduzieren, indem alle Anrufer- und Angerufenen-Methoden zusammen angeordnet werden.
Problemlink: https://youtrack.jetbrains.com/issue/IDEA-149524 . Bitte stimmen Sie für die Entschließung.
Die entsprechende Aktion hierfür ist Code neu anordnen. Diesem ist kein Schlüssel zugewiesen, aber Sie können Ihren eigenen über Einstellungen-> Keymap definieren.
quelle
IntelliJ verfügt über ein integriertes System, mit dem Sie festlegen können, wie Ihre Methoden bestellt werden sollen. Sie müssen zu Einstellungen (Strg + Alt + S) -> Editor -> Codestil -> Java -> Anordnung (Registerkarte) gehen und nach unten scrollen, bis Sie die Symbole mit finden
methods
. Dort können Sie die Optionen bearbeiten, um sie nach Sichtbarkeit oder alphabetisch zu sortieren oder verwandte Optionen in Gruppen zu halten. Hier ist ein Screenshot meiner Einstellungen, in dem Methoden automatisch nach Sichtbarkeit (öffentlich, geschützt, privat) und alphabetisch (az) sortiert werden. Die blauen Markierungen zeigen die aktuell ausgewählten Regeln.quelle
Mit dem Cursor auf der Methodendefinitionszeile (Sie müssen nicht ctrl+ shift+ upoder ctrl+ shift+ drücken down, um sich nach oben oder unten zu bewegen.
Sie können auch ctrl+ shift+ drücken, um alles schnell zu reduzieren, numberpad -damit Sie sich auf das Bewegen konzentrieren können (normal -funktioniert auch auf meinem Laptop, nicht sicher warum) und ctrl+ shift+ numberpad +, um wieder alles zu sehen (Strg-Umschalt-gleich funktioniert auf meinem Laptop als Gut).
quelle
Wählen Sie einen Textblock aus (drücken Sie einige Male Strg-W) und bewegen Sie ihn dann mit Strg-Umschalt-Auf und Strg-Umschalt-Ab.
quelle
Es gibt einen automatisierten Weg, den Sie später anpassen können
Code -> Dialogfeld "Formatierungsdatei neu anzeigen"
und aktivieren Sie das Kontrollkästchen "Code neu anordnen"
quelle