코딩테스트 - 프로그래머스/Lv. 0

[69] JAVA 문자열의 뒤의 n글자

유혁스쿨 2023. 11. 27. 16:59
728x90
반응형

문제 설명

문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 뒤의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요.


제한사항
  • my_string은 숫자와 알파벳으로 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 1,000
  • 1 ≤ n ≤ my_string의 길이

 

입출력 예
my_string n result
"ProgrammerS123" 11 "grammerS123"
"He110W0r1d" 5 "W0r1d"

입출력 예 #1

  • 예제 1번의 my_string에서 뒤의 11글자는 "grammerS123"이므로 이 문자열을 return 합니다.

입출력 예 #2

  • 예제 2번의 my_string에서 뒤의 5글자는 "W0r1d"이므로 이 문자열을 return 합니다.

[나의 풀이]

import java.util.stream.IntStream;
import java.util.stream.Collectors;
class Solution {
	public String solution(String my_string, int n) {
    	return IntStream.rangeClosed(my_string.length()-n, my_string.length()-1)
        				.mapToObj(idx -> my_string.split("")[idx])
                        .collect(Collectors.joining());
    }
}

[다른 풀이]

class Solution {
	public String solution(String my_string, int n) {
    	return my_string.substring(my_string.length() - n);
    }
}

String의 substring()메소드를 통해 간단하게 구현할 수 있다.

public String substring(int beginIndex) {
    return substring(beginIndex, length());
}

substring은 2개의 메소드로 오버로딩 되어있는데, 매개변수가 1개인 substring을 호출하면

내부적으로 2개인 메소드를 호출한다.

즉, 첫번째 매개변수 인덱스 부터 길이-마지막요소까지 잘라내어 반환한다.

 

한줄좌...멈춰....

728x90
반응형

'코딩테스트 - 프로그래머스 > Lv. 0' 카테고리의 다른 글

[71] JAVA n 번째 원소부터  (1) 2023.11.27
[70] JAVA 문자열을 정수로 변환하기  (1) 2023.11.27
[68] JAVA 카운트 다운  (1) 2023.11.27
[67] JAVA 카운트 업  (0) 2023.11.27
[66] JAVA 정수부분  (1) 2023.11.27