Java/모두의 자바

Chapter 10-53 가운데 글자 가져오기

계란💕 2022. 2. 12. 23:42

 

  Ex) getMiddle 메서드는 단어 하나를 입력 받는다. 입력받은 단어의 다운데 글자를 반환하도록 getMiddle메서드를 

만들어라. 단어 길이가 짝수이면 가운데 두 글자를 반환하라. 

<hide/>
package javaStudy;
public class StringExercise {
	String getMiddle(String word) {
		String middleWord = "";
		int index = word.length() / 2;
		if(word.length() % 2 == 0) {
			middleWord = word.substring(index - 1, index + 1 );
		}else {
			middleWord = word.substring(index, index + 1);
		}
		return middleWord ;
	}
	public static void main(String[] args) {
		StringExercise se = new StringExercise();
		System.out.println(se.getMiddle("power"));
		System.out.println(se.getMiddle("test"));
	}
}

  Note) 실행 결과

  - 문제를 해결 하기 위해 세서드의 인자로 들어온 word로 들어온 단어가 짝수인지 홀수인지 알아야한다.

  - 단어길이는 word.length()로 알 수 있다. 

  - 짝수/ 홀수인 경우로 나눠조건을 처리한다. 

  - power라는 단어의 w의 인덱스는 2이다. 

    -> word.substring(index - 1, index + 1 )

  - test의 길이는 4이고 이 값을 2로 나누면 2이다. index 2는 s를 가리킨다.

    -> 얻어야 하는 값은 e, s 이므로 index - 1한 값 부터 index까지 얻어내면 된다.

    -> word.substring(index, index + 1)