백엔드개발자/알고리즘관련
특정단어 뒤집기 / Character.isAlphabetic() , String.valueOf(), toString()
보혀니
2021. 10. 10. 22:02
/*
* 영어 알파벳과 특수문자로 구성된 문자열이 주어지면 영어 알파벳만 뒤집고,
* 특수문자는 자기 자리에 그대로 있는 문자열을 만들어 출력하는
* 프로그램을 작성하세요
*
* 첫 줄에 길이가 100을 넘지 않는 문자열이 주어집니다.
*
* 첫 줄에 알파벳만 뒤집힌 문자열을 출력합니다.
*/
import java.util.Scanner;
public class Main {
public String solution(String str) {
String answer;
char[] s = str.toCharArray();
int lt = 0;
int rt = str.length() - 1;
while (lt < rt) {
if (!Character.isAlphabetic(s[lt])) {
lt++;
} else if (!Character.isAlphabetic(s[rt])) {
rt--;
} else {
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
}
answer = String.valueOf(s);
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.next();
System.out.println(T.solution(str));
}
}
변수 lt 는 left / rt 는 right 임ㅋㅋㅋ
Character.isAlphabetic()
isAlphabetic()
영문자 인지 확인하는 메소드
+ isLetter()
Charater의 다른메소드
isUpperCase(); => 대문자 확인
isLowerCase(); => 소문자 확인
isDigit(); => 숫자 확인
String.valueOf()
Object값을 String으로 변환하는 메소드
?? toString() 과 뭐가 다른가??
차이
String.valueOf()
=> 값이 null이면 문자열 "null"을 반환한다.
toString()
=> 값이 null 이면 Null PointerException을 발생 시킴
String.valueOf / toString 참고
https://swjeong.tistory.com/146