강의

멘토링

로드맵

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

박건우님의 프로필 이미지
박건우

작성한 질문수

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

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

String[] 으로 선언한 s 변수가 제 생각대로 출력이 되지 않음. (문제풀이엔 상관 업지만, 개념적인 부분)

작성

·

215

0

import java.util.Scanner;

public class Main3 {

public String solution(String str) {
String answer = "";

int m = Integer.MIN_VALUE;
String[] s = str.split(" ");
System.out.println(s); // 이렇게 하면 ["it" , "is" , "time"] 이렇게 보일 줄 알았는데 왜 안 보일까?
for (String x : s) {
System.out.println(x);
}

return answer;

}

public static void main(String[] args) {
Main3 T = new Main3();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine(); // next는 공백을 기준으로 한 단어 또는 한 문자씩 입력받는다. 쉽게 말해 공백 이후의 글자는 날라간다?! nextLine은 문장 전체가 공백 포함해서 통으로 입력됨
System.out.println(T.solution(str));
}

}


질문

위의 코드 중에에서
        System.out.println(s); 

이 부분이 이렇게 하면 ["it" , "is" , "time"] 이렇게 보일 줄 알았는데 왜 안 보일까요
?

퀴즈

대소문자를 구분하지 않고 문자열 내 특정 문자의 총 개수를 세려면, 어떤 방법이 가장 효율적일까요?

문자열을 반복하며 각 문자가 찾으려는 문자의 대문자 또는 소문자인지 모두 비교한다.

문자열 전체를 한 가지 케이스(예: 모두 대문자)로 통일한 후 해당 문자의 개수를 센다.

대문자와 소문자의 개수를 각각 세어 합산한다.

Set 자료구조를 사용하여 중복 없이 문자를 저장한 후 개수를 센다.

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

파이썬이나 자바스크립트는 배열으 변수명을 출력하면 배열의 원소들을 다 출력해주지만

C++, 자바는 배열이름이 주소이기때문에 보여주지 않는것 같습니다.

박건우님의 프로필 이미지
박건우

작성한 질문수

질문하기