오른쪽 괄호는 중괄호와 세미콜론이 모두 파일의 오른쪽에있는 단일 지점에 정렬되는 스타일의 코드 괄호입니다.
일반적으로 이것은 여러 가지 이유로 나쁜 습관으로 간주됩니다.
도전
모든 방법을 통해 여러 줄 문자열을 가져와 중괄호 스타일을 오른쪽 브레이스로 변환하십시오.
이 문제를 해결하려면 Java 코드 작업 만하면되지만 이론적으로 Braces와 Semicolon을 사용하는 모든 코드에서 작동해야합니다.
{};
공백 사이에 공백이없는 한 행의 모든 문자를 가져와야합니다. EG. }}
,, ; }
}\n\t\t}
공백을 사용하여 파일의 오른쪽에 정렬하십시오.
예를 들면 다음과 같습니다.
a {
b;
{c
되어야한다
a {
b ;{
c
또는 더 추상적으로 모든 {};
문자 의 왼쪽에서 오른쪽으로 공백을 밀어 넣으십시오 .
그렇지 않으면 줄 들여 쓰기를 유지해야합니다. 문자 이동 후 공백 만 포함 된 행 {};
은 선택적으로 제거 할 수 있습니다.
예를 들면 다음과 같습니다.
a{
b{
c;
}
}
d;
어느 쪽이든 될 수 있습니다
a {
b {
c;}}
d ;
또는
a {
b {
c;}}
d ;
오른쪽으로 밀면 모든 {};
문자가 가장 긴 줄보다 짧은 지점에 정렬되는 것을 나타냅니다 . 그 이후의 모든 공간은 허용됩니다.
따라서 아래의 모든 것이 허용됩니다.
a {
bc;
a {
bc ;
a {
bc ;
기타...
모든 코드의 행에는 {};
다른 비월 공백 문자 사이의 문자 가 포함될 수 있지만이 경우를 처리 할 필요는 없지만 기울어지면 그대로 두어야합니다. 줄에는 {};
문자가 전혀 포함되지 않을 수 있으므로 올바르게 처리해야합니다. 아래와 같이.
a {
b ;
c
d }
우리는 Code Review 가 끔찍한 일을보고 싶지 않기 때문에 코드를 최대한 작게 만들어야합니다.
예제 / 테스트 케이스
일반 자바
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello, World!");
}
}
된다 ...
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!") ;}}
이미지 자체
public class Permuter{
private static void permute(int n, char[] a){
if (n == 0){
System.out.println(String.valueOf(a));
}else{
for (int i=0; i<= n; i++){
permute(n-1, a);
swap(a, n % 2 == 0 ? i : 0, n);
}
}
}
private static void swap(char[] a, int i, int j){
char saved = a[i];
a[i] = a[j];
a[j] = saved;
}
}
된다 ...
public class Permuter {
private static void permute(int n, char[] a) {
if (n == 0) {
System.out.println(String.valueOf(a)) ;}
else {
for (int i=0; i<= n; i++) {
permute(n-1, a) ;
swap(a, n % 2 == 0 ? i : 0, n) ;}}}
private static void swap(char[] a, int i, int j) {
char saved = a[i] ;
a[i] = a[j] ;
a[j] = saved ;}}
그렇게 완전하지 않은 파이썬
대조적으로
def Main():
print("Hello, World!");
Main();
된다 ...
def Main():
print("Hello, World!") ;
Main() ;
노트
- 표준 허점 적용
- 표준 IO 적용
- 이것은 code-golf 이므로 바이트 단위의 가장 짧은 프로그램이 승리합니다!
- Right Brace 스타일의 프로그래밍과 관련된 손해에 대해 책임을지지 않습니다
- 즐기세요!
메모 수정
나는 도전 세부 사항을 다시 말했지만, 규칙에 대한 다른 사람의 견해를 깨뜨리지 않기를 바랍니다. 이것은 훨씬 명확하고 덜 충돌하는 사양이어야합니다.
;{}
별도의 줄에있는 경우 문자를 모으는 것이 더 명확해질 수 있습니다 (규칙이 아닌 예제에서만 명확하며 실제로 줄 \t}
이 들여 쓰기 를 유지하는 경우 끝까지 이동 하지 않음 을 의미 }
합니다)
int a=0;System.out.println(a);