프로그래머스에서 본 예제를 자바로 구현해봤습니다..

1. 문제

Jaden_Case함수는 문자열 s을 매개변수로 입력받습니다.
s에 모든 단어의 첫 알파벳이 대문자이고, 그 외의 알파벳은 소문자인 문자열을 리턴하도록 함수를 완성하세요
예를들어 s가 3people unFollowed me for the last week라면 3people Unfollowed Me For The Last Week를 리턴하면 됩니다.


2. 코드

  1. package Test;
  2.  
  3. public class JadenCase {
  4. public static void main(String[] args) {
  5. String s = "3people unFollowed me for the last week";
  6.  
  7. JadenCase jc = new JadenCase();
  8. System.out.println(jc.jadenCase(s));
  9. }
  10.  
  11. private String jadenCase(String s) {
  12. boolean isNextUpper = true;
  13. StringBuffer sb = new StringBuffer();
  14.  
  15. for ( int inx=0; inx<s.length(); inx++ ) {
  16. char c = s.charAt(inx);
  17. if ( inx == 0 || isNextUpper ) {
  18. sb.append(Character.toUpperCase(c));
  19. isNextUpper = false;
  20. } else {
  21. sb.append(Character.toLowerCase(c));
  22. }
  23.  
  24. if ( c == ' ') {
  25. isNextUpper = true;
  26. }
  27. }
  28. return sb.toString();
  29. }
  30. }