(Java) 6. 문자열에서 각 단어의 첫 글자를 대문자로 표시

문자열에서 각 단어의 첫 글자를 대문자로

문제:

문자열을 가져와서 문자열에 있는 각 단어의 첫 글자가 대문자인 문자열을 반환해야 합니다.

주의:

  • 단어는 공백으로 구분됩니다.

  • 연속된 공백이 있을 수 있습니다.

  • 공백(spaces)만으로 구성된 문자열을 입력하면 빈 문자열이 반환되어야 합니다.

코드 솔루션:

public class Solution { 
	public String letterCapitalize(String str) {
    	// TODO:
		// if (str.length() == 0) return ""; // 이 코드는 생략해도 테스트에 통과한다.

// 문자열을 공백을 기준으로 쪼개준다.

String() words = str.split(" "); String result = ""; // result는 나중에 합친 문자열을 담는다.

// 각 단어의 첫 글자를 대문자로 변경한다.

for(int i = 0; i < words.length; i++) { if(words(i).isEmpty()) { words(i) = words(i); } else { words(i) = String.valueOf(words(i).charAt(0)).toUpperCase() + words(i).substring(1); } } // 각 단어를 문자열로 다시 합쳐준다.

result = String.join(" ", words); return result; } }

각 단어의 첫 글자를 대문자로 차근차근 의사 코드를 작성한 후 코드를 작성했습니다.

이 문제에서는 연속된 공백이 있을 수 있다는 점에 유의하십시오.

공백을 기준으로 문자열을 분할하여 배열을 만들 때 공백이 연속되는 경우 배열 요소에 공백이 포함될 수 있습니다.

따라서 이 부분은 if 문으로 별도로 처리해야 합니다.