https://www.acmicpc.net/problem/11365
오늘은 잘 모르는 것을 푸니깐 두 개를 풀어보려고한다.
자바에서 글자를 뒤집는 것은 좀 하기 힘들었던것 같은데, 검색해보니 의외로 쉬운 방법이 있었다.
바로 StringBuilder 클래스를 이용하는것. StringBuilder 클래스의 reverse()라는 함수를 사용하면 말 그대로 reverse처리를 할 수 있다.
Scanner의 nextLine()을 사용했는데, 이 경우 엔터키를 치면 입력이 종료되는 상황이 발생하였다.
검색해보니 nextLine()을 이용하되, while(true)를 써서 계속 입력받을 수 있도록 만들어야 한다.
그렇다면 언제까지 입력받을 것인가? 이 것은 String 변수에서 equalsIngnoreCase를 사용해주면 된다.
그래서 아래가 완성된 코드
package bjquiz2025;
import java.util.Scanner;
public class day0112 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
String sen = sc.nextLine();
if(sen.equalsIgnoreCase("END")) {
break;
}
StringBuilder sentence = new StringBuilder(sen);
StringBuilder reverse = sentence.reverse();
System.out.println(sentence);
}
결론
1. JAVA에서 String을 빈칸까지 입력받을 때에는 sc.nextLine()을 써주며
엔터키눌려도 입력받고 싶으면 while(true)와 if, sc.equalsIgnoreCase(), break를 사용해서 조절해준다.
2. StringBuilder클래스의 reverse()함수를 사용하면 자바에서도 손쉽게 글자를 reverse할 수 있다.
'알고리즘(백준)' 카테고리의 다른 글
4월 14일 : 프로그래머스 문자열 겹쳐쓰기(Java) (1) | 2025.04.14 |
---|---|
1월 17일: 백준 20361번(JAVA) (2) | 2025.01.18 |
1월 16일 : 백준 25191번(JAVA) (1) | 2025.01.16 |
1월 13일: 백준 11098번(JAVA) (4) | 2025.01.13 |
1월 12일: 백준 27434번(JAVA-> PYTHON) (1) | 2025.01.12 |