본문 바로가기

Java/프로그래머스

[JAVA] 프로그래머스 - 공백으로 구분하기 1

https://school.programmers.co.kr/learn/courses/30/lessons/181869

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

 

문자열 자르기, 분리하기 

 

Java - 문자열 자르기, 분리하기(split, substring) (codechacha.com)

 

Java - 문자열 자르기, 분리하기(split, substring)

String.split(), String.substring()으로 문자열을 자를 수 있습니다. 또한 Commons-io 라이브러리를 이용하여 문자열을 자를 수 있습니다. split은 정규표현식을 인자로 받으며, 그 문자열을 기준으로 String을

codechacha.com

 

 

공백으로 문자열 분할 

 

Java에서 공백으로 문자열 분할 | Delft Stack

 

Java에서 공백으로 문자열 분할

이 게시물은 Java에서 문자열을 공백으로 분할하는 방법을 소개합니다.

www.delftstack.com

 

1) split() 메소드를 사용하여 문자열 분할 

 

- String 클래스 메소드이며 문자열을 spliting한 후 문자열 배열을 리턴한다. 

- split() 메소드에서 정규식을 사용하여 문자열을 공백으로 분할 

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    String[] newStr = str.split("\\s+");
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

 

 

2) StringTokenizer 클래스를 사용하여 문자열 분할 

 

- 분할 후 토큰을 문자열로 반환

 

import java.util.StringTokenizer;
public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    StringTokenizer tokens = new StringTokenizer(str, " ");
    String[] newStr = new String[tokens.countTokens()];
    int index = 0;
    while (tokens.hasMoreTokens()) {
      newStr[index] = tokens.nextToken();
      System.out.println(newStr[index]);
      index++;
    }
  }
}

 

 

정답 

 

import java.util.StringTokenizer;

class Solution {
    public String[] solution(String my_string) {
        StringTokenizer token = new StringTokenizer(my_string, " ");
        String answer[] = new String[token.countTokens()];
        int idx = 0;
        while(token.hasMoreTokens()) {
            answer[idx++]=token.nextToken(); 
        }
        return answer;
    }
}

 

 

다른 사람의 풀이 

 

1)

class Solution {
    public String[] solution(String my_string) {
        String[] answer = my_string.split(" ");
        return answer;
    }
}