본문 바로가기

자바

String으로 입력받은 값의 최대,최소 구하는 문제

반응형
  1. package javaalgorithm;
  2. import java.util.StringTokenizer;
  3. public class GetMinMaxString {
  4.     public String getMinMaxString(String str) {
  5.         StringTokenizer st = new StringTokenizer(str);
  6.         int count = st.countTokens();
  7.         int[] arr = new int[count];
  8.         int max,min;
  9.        
  10.         for(int i=0;i<count;i++){
  11.             arr[i] = Integer.parseInt(st.nextToken());
  12.         }
  13.         max=arr[0];
  14.         min=arr[0];
  15.         for(int i=1;i<count;i++){
  16.             if(max<arr[i])
  17.                 max=arr[i];
  18.             if(min>arr[i])
  19.                 min=arr[i];
  20.         }
  21.         return "" + min + " " + max;
  22.     }
  23.     public static void main(String[] args) {
  24.         String str = "1 2 3 4";
  25.         GetMinMaxString minMax = new GetMinMaxString();
  26.         //아래는 테스트로 출력해 보기 위한 코드입니다.
  27.         System.out.println("최대값과 최소값은?" + minMax.getMinMaxString(str));
  28.     }
  29. }

처음에는 StringTokenizer를 사용해서 문제를 풀었지만 다른사람의 풀이를 보고나서 String에 split이라는 함수를 사용해서 " "를 지울 수 있는 방법이 있다는 것을 알았다.


그리고 split함수를 이용해서 문제를 푼 방법.


  1. package javaalgorithm;
  2.  
  3. public class GetMinMaxString1 {
  4.     public String getMinMaxString(String str) {
  5.         String[] s = str.split(" ");
  6.         int len = s.length;
  7.         int max = Integer.parseInt(s[0]);
  8.         int min = Integer.parseInt(s[0]);
  9.        
  10.         for(int i=1;i<len;i++){
  11.             if(max<Integer.parseInt(s[i]))
  12.                 max=Integer.parseInt(s[i]);
  13.             if(min>Integer.parseInt(s[i]))
  14.                 min=Integer.parseInt(s[i]);
  15.         }
  16.        
  17.        
  18.         return "" + min + " " + max;
  19.     }
  20.  
  21.     public static void main(String[] args) {
  22.         String str = "1 2 3 4";
  23.         GetMinMaxString1 minMax = new GetMinMaxString1();
  24.         //아래는 테스트로 출력해 보기 위한 코드입니다.
  25.         System.out.println("최대값과 최소값은?" + minMax.getMinMaxString(str));
  26.     }
  27. }


'자바' 카테고리의 다른 글

가운데 글자 가져오기  (0) 2016.11.17
시저암호  (0) 2016.11.17
나누어 떨어지는 숫자배열  (0) 2016.11.14
문자열 내림차순으로 배치하기  (0) 2016.11.14
삼각형 출력하기  (0) 2016.11.14