인프런 커뮤니티 질문&답변

밍프런님의 프로필 이미지

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

3. 문장 속 단어(indexOf(), substring())

채점 시 일부 오답이 나오는데 확인 부탁드립니다.

작성

·

196

0

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Main main = new Main();
        Scanner kb = new Scanner(System.in);
        String str = kb.next();
        System.out.println(main.solution(str));
    }

    public String solution(String str) {
        String answer = "";
        String[] arrays = str.split(" ");
        for (String s : arrays)
        {
            if (s.length() > answer.length()) {
                answer = s;
            }
        }
        return answer;
    }
}

 

it is time to study -> it

dkjg LKKL KJkjglkd Kjgkd LKKJLJLJLKJLLLLLLL -> dkjg

 

이렇게 나온다고 하는데 디버깅 돌려봐도 정상 동작하는 것 같은데 혹시 잘못 된 부분이 있을까요?

답변 1

1

나르비님의 프로필 이미지

2022. 06. 07. 15:10

    public static void main(String[] args) {
        Main main = new Main();
        Scanner kb = new Scanner(System.in);
        String str = kb.next();
        System.out.println("str : " + str); // 추가한 부분
        System.out.println(main.solution(str));
    }

 

 

kb.next() 와 같은 방식으로 입력을 받을 경우에는 

띄어쓰기 이전의 문자까지밖에 입력을 받을 수 없습니다. 

 

만약 띄어쓰기를 포함하여 한줄을 통째로 입력받고 싶으시다면 

kb.nextLine()  함수를 사용하셔야 합니다. 

밍프런님의 프로필 이미지
밍프런
질문자

2022. 06. 07. 23:34

감사드립니다!