1. 문제

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

2. 문제 풀이

class Solution {
    public int solution(int a, int b) {
        
        String ab = String.valueOf(a) + String.valueOf(b);
        String ba = String.valueOf(b) + String.valueOf(a);
        
        int abValue = Integer.parseInt(ab);
        int baValue = Integer.parseInt(ba);
        
        if(abValue >= baValue){
            return abValue;
        }else{
            return baValue;
        }

    }
}

 

  • String.valueOf() : int -> String 변환
  • Integer.parseInt() : String -> int 변환

 

3. 다른 풀이

덧셈 연사자는 연산자 중 한 쪽이 String형이면 나머지 쪽을 String 형 문자열로 변환 후 결합한다  

또한 삼항 연산자를 사용하여 for문은 4줄이나 사용해야하지만 삼항 연산자는 한줄로 간편하게 작성할 수 있다.

이 방법을 알았으면 처음 풀었던 풀이 보다 훨씬 단순하게 코딩할 수 있었다.

class Solution {
    public int solution(int a, int b) {
        
        int answer = 0;
        
        int ab = Integer.parseInt(""+a+b);
        int ba = Integer.parseInt(""+b+a);
        
        answer = ab>=ba ? ab : ba;
        
        return answer;

    }
}

+ Recent posts