[문제]
연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다.
- 12 ⊕ 3 = 123
- 3 ⊕ 12 = 312
양의 정수 a와 b가 주어졌을 때, a ⊕ b와 b ⊕ a 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요.
단, a ⊕ b와 b ⊕ a가 같다면 a ⊕ b를 return 합니다.
a | b | result |
9 | 91 | 991 |
89 | 8 | 898 |
[답]
class Solution {
public int solution(int a, int b) {
int answer = Integer.parseInt(Integer.toString(a) + Integer.toString(b));
int answer2 = Integer.parseInt(Integer.toString(b) + Integer.toString(a));
if(answer > answer2) {
return answer;
} else {
return answer2;
}
}
}
[다른사람 답]
class Solution {
public int solution(int a, int b) {
int ab = Integer.parseInt(Integer.toString(a) + Integer.toString(b));
int ba = Integer.parseInt(Integer.toString(b) + Integer.toString(a));
//삼항 연산자 사용
return ab >= ba ? ab : ba;
}
}
toString() : 해당 인스턴스 정보를 문자열로 반환
Integer.parseInt() : 문자열을 정수형으로 변환
parseInt와 valueOf의 차이점
Integer.parseInt() vs Integer.valueOf() 는 메소드 둘다 String 을 Integer 로 변경하기 위해 사용하는 메소드
parseInt(): 원시데이터인 int 타입을 반환
valueOf(): Integer 래퍼(wrapper)객체를 반환
'Coding Practice > 프로그래머스 Lv.0' 카테고리의 다른 글
홀짝에 따라 다른 값 반환하기 (0) | 2024.01.24 |
---|---|
두 수의 연산값 비교하기 (0) | 2024.01.22 |
문자열 곱하기 (0) | 2024.01.19 |
문자열 섞기 (0) | 2024.01.19 |
문자열 겹쳐쓰기 (0) | 2024.01.18 |