본문 바로가기
Algorithm/코드업 100제

코드업(100제) JAVA - 1024 [기초-입출력] 단어 1개 입력받아 나누어 출력하기

by telecaster0 2021. 11. 22.
import java.util.Scanner;

	public class Main{
       	public static void main(String[] args){
        
       	Scanner sc = new Scanner(System.in);
        //Scanner를 통해 입력값을 String 변수에 담음
        String inputWords=sc.next();      
        //문자열 위치(index)는 0부터 시작. 첫번째 문자열이 index는 0, 띄어쓰기(null값)에서 출력 중단
    		for(int i=0; i<inputWords.length(); i++){  
            String parse= inputWords.substring(i,i+1);
            System.out.println("'"+parse+"'");
            }

            sc.close();

        }


}

 

 

입력한 단어를 (30글자까지) 한글자씩 출력하는 문제

null값 즉, 띄어쓰기가 나오면 거기서 출력을 중단해야 한다.

 

for문 이전까지는 scanner를 통해 입력받는 코드고

그 이후 for문&문자열자르기(substring)을 통해서 문자열 출력을 반복해주도록 했다.

조건문에서 입력한글자수의 -1 만큼의 인덱스까지 돌아야하니 i<inputWords.length()를 조건문에 삽입해준다.

그리고 입력된 문자열을 한글자씩 나눠서(substring) parse라는 변수에 저장한다.


substring 함수의 파라미터가 두개인데 첫번째 파라미터엔 출력하고자하는 첫 문자열의 index.
두번째 파라미터에선 자르고자 하는 문자열의 index. (그 index 바로 앞까지 출력된다! 헷갈림 주의)
즉, substring(0,1)이면 첫번째 문자열 (index가 0인) 문자열만을 저장.