Notice
Recent Posts
Recent Comments
Link
투케이2K
217. (java/자바) 알고리즘 : 숫자 문자열과 영단어 - for문 , replaceAll , array 매칭 본문
[개발 환경 설정]
개발 툴 : Eclipse
개발 언어 : Java
[소스 코드]
package ex5;
public class MainActivity24 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("[Program Start]");
System.out.println("");
/**
* [숫자 문자열과 영단어]
* 1. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다 (478 → "one4seveneight")
* 2. 문자열 s가 매개변수로 주어질 경우, s가 의미하는 원래 숫자를 return 하세요
* 3. 입출력 예시 :
* input : "one4seveneight" / output : 1478
* input : "23four5six7" / output : 234567
* 4. 프로그래머스 사이트 : https://programmers.co.kr/learn/courses/30/lessons/81301
* */
// 초기 문자열 변수를 선언합니다
String data = "one4seveneight";
// 결과를 출력하는 함수 출력 실시
System.out.println("결과 : " + solution(data));
} // 메인 종료
public static int solution(String s) {
// 결과를 리턴할 변수 선언 실시
int result = 0;
// 초기 인풋으로 들어온 데이터 확인 실시
System.out.println("문자열 데이터 : " + s);
System.out.println("");
// 문자열 중에서 각 배열에 해당하는 값을 변경하기 위해 배열 선언
String word[] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
String number[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
// for 문을 수행하면서 문자열 변경 실시
for (int i=0; i<10; i++) { // 바꿔야하는 숫자 범위가 0 ~ 9 까지
s = s.replaceAll(word[i], number[i]); // 인풋으로 들어온 문자열에서 각 영단어 값을 숫자로 변경 실시
}
result = Integer.parseInt(s);
// 결과 반환 실시
return result;
}
} // 클래스 종료
[결과 출력]
[요약 설명]
/**
* [숫자 문자열과 영단어]
* 1. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다 (478 → "one4seveneight")
* 2. 문자열 s가 매개변수로 주어질 경우, s가 의미하는 원래 숫자를 return 하세요
* 3. 입출력 예시 :
* input : "one4seveneight" / output : 1478
* input : "23four5six7" / output : 234567
* 4. 프로그래머스 사이트 : https://programmers.co.kr/learn/courses/30/lessons/81301
* */
반응형
'Java' 카테고리의 다른 글
Comments