키보드 바로 가기를 사용하여 IntelliJ에서 메서드 매개 변수 재정렬


93

IntelliJ에서는 + Shift+ (또는 + Shift+ ) 를 눌러 문장의 순서 (또는 해당 부분에 대한 전체 메서드)를 쉽게 재정렬 할 수 있습니다 .

메소드 매개 변수의 순서를 쉽게 변경할 수있는 지름길이 있는지 궁금합니다.

public void sth(String a, String b) {...}

될 것입니다

public void sth(String b, String a) {...}

키보드 단축키를 사용합니다 (커서가 매개 변수 중 하나에 위치한다고 가정).

IntelliJ가 매개 ​​변수를 다시 정렬하면 나에게 충분할 것입니다. 즉, 전체 리팩터링> 메서드 서명 변경을 트리거 할 필요가 없습니다 .


1
매개 변수가 3 개 이상일 때 어떻게 작동해야합니까? :)
Konstantin Yovkov

2
내 커서가 두 번째 매개 변수에 있다고 가정 해 보겠습니다. 위로 이동하면 첫 번째 매개 변수가됩니다. 아래로 이동하면 마지막이 될 것입니다.
Stefan Haberl

2
한 번에 하나의 매개 변수가 위아래로 이동했습니다! 이 위업을 할 수 있으면 좋겠다!
당 에릭손

1
Ctrl+F6다음 Alt+Up또는 Alt+Down매개 변수를 이동하려면?
루보 미르 Shaydariv

1
네, 생각보다 자 주요 메서드를 구체화하기 시작할 때 일반적으로 Alt-Enter 필요할 때 추가 매개 변수를 추가합니다. 완료되면 매개 변수를보다 논리적 인 순서로 재정렬합니다. 또한 메서드 호출에 대한 바로 가기도 있으면 정말 좋을 것 같습니다. (남자, 같은 유형의 4 개 또는 5 개 이상의 매개 변수가있는 레거시 API로 작업 할 때 얼마나 자주 주문을 잘못 받았습니까! uhg!)
Stefan Haberl

답변:


158

IDEA 16 EAP 이후로 이에 대한 조치가 있습니다. 메뉴에 있습니다.

코드 | 요소를 왼쪽 / 오른쪽으로 이동

키보드 단축키는 Alt+ Ctrl+ Shift+ Left/Right( OSX의 경우 Alt+ Cmd+ Shift+ Left/Right)입니다.

자세한 내용은 http://blog.jetbrains.com/idea/2016/01/intellij-idea-16-eap-improves-editor-and-vcs-integration/ 을 참조하십시오.


IDEA 16이 공개 될 때까지 조금 더 기다려야 할 것 같지만 좋은 소식입니다!
Stefan Haberl

EAP는 이미 야생에 있습니다. 시도해 볼 수 있습니다. :) 출시까지 2 개월 이상 걸리지 않을 것 같습니다.
Peter Gromov

4
좋지만 Lyubomyr Shaydariv 답변 : stackoverflow.com/a/35359882/4024146 은 매개 변수 변경에 대한 종속성을 리팩터링하고 변경하기 때문에 훨씬 좋습니다. 이것은이 메 토스에 대한 매개 변수를 전환 할뿐 다른 메서드의 메서드 호출이 아닙니다. 매크로를 만들 필요가 없습니다. CTRL + F6을 사용하고 ALT + ↓를 사용하면됩니다.
mtrakal

1
@mtrakal 그들은 두 가지 다른 것입니다. 메서드를 작성할 때 무거운 (느린) 리팩토링이 필요하지 않습니다. 매개 변수를 쉽게 이동하고 싶습니다. 이것의 진짜 문제는 종종 별도의 줄에 매개 변수가 있으므로 작동하지 않는다는 것입니다. (난 정말 바로 이동 - 이전 및 이동 - 다음이 아닌 왼쪽을 할 수 있습니다.)
제임스 무어

다른 방법의 여러 매개 변수에 커서가 여러 개있는 경우 함께 이동할 수 있습니다.
WesternGun

16

IDEA에서 가능한지 확실하지 않지만 두 매개 변수 메서드에 편집기 매크로를 사용하려고 할 수 있습니다.

  • 편집기-> 매크로-> 매크로 기록 시작
  • 매크로 기록 :
    • Ctrl+ 서명 변경 대화 상자 F6열기
    • Alt+ 첫 번째와 두 번째 매개 변수를 바꾸려면
    • Tab매개 변수 탭 을 비활성화하고 리팩터링 버튼에 초점을 맞 춥니 다.
    • Enter 리팩토링을 수행 할 때 대화 상자를 닫으려면
  • 편집기-> 매크로-> 매크로 기록을 중지하고 매크로 에 이름을 지정합니다. "Swap method parameters 1 and 2"라고 가정 해 보겠습니다.

그런 다음 Editor-> Macros 메뉴 를 통해 매크로에 액세스 하거나 Settings-> Keymap-> Main menu / Edit / Macros / Swap method parameters 1 및 2 에서 사용자 지정 바로 가기를 할당합니다 . 나에게는 매우 지저분하고 문맥에 구애받지 않는 방식으로 보이지만 조금 도움이 될 수 있습니다.


11

Ubuntu 18.04에서 기본 단축키는 Ctrl + Alt + Shift + Super + Left / Right로 인수를 위치에서 왼쪽이나 오른쪽으로 이동합니다.

이것은 일부 새로운 OS 레벨 단축키와 충돌하지 않도록 설정되어 있기 때문입니다.


1
감사합니다. 손가락 체조가 필요하지만 별도의 키를 묶는 것보다 훨씬 좋습니다.
gMale
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.