[단계별로 풀어보기] 9086번 문자열 (문자열)

Jun_Gyu·2023년 3월 18일
0

BackJoon Online Judge

목록 보기
11/18

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        
       int T = Integer.parseInt(br.readLine());
       
       for(int i = 0; i<T; i++) {
    	   String str = br.readLine();
    	   System.out.println(str.substring(0, 1) + str.substring(str.length()-1, str.length())); 
       }
        
    }
}

위의 문제에서는 첫줄에 입력할 줄의 수를 입력, 2번째 줄부터는 문자열을 입력하여 처음과 끝자리의 문자를 차례로 출력하게 만드는 문제이다.

위의 경우에서 나는 substring을 사용하여 출력하고자 하는 문자의 위치를 지정해주었다.

substring의 경우에는 출력하고자 하는 구간을 처음과 마지막 부분을 지정해주어야 하기 때문에 다소 번거로움이 있을 수 있다.

이런 경우에는 StringBuilder클래스를 이용하여 원하는 위치만 입력해서 출력 할 수도 있겠다.
아래는 그 경우의 코드이다.

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder(); // StringBuilder 클래스

        int N = Integer.parseInt(br.readLine());

        for(int i = 0; i < N; i++){
            String str = br.readLine();
            sb.append(str.charAt(0)).append(str.charAt(str.length()-1) + "\n"); 
            // .append(a).append(b) = /append(a + b)  
        }

        br.close();
        System.out.println(sb);
    }
}

profile
시작은 미약하지만, 그 끝은 창대하리라

0개의 댓글

Powered by GraphCDN, the GraphQL CDN