컴퓨터/프로그래머스

[Java] 프로그래머스 코딩테스트 연습 / 두 수의 연산값 비교하기

peridott 2026. 1. 24. 21:16

문제


정답

class Solution {
	public int solution(int a, int b) {
    	int plusCase = Integer.parseInt(String.valueOf(a) + String.valueOf(b));
        int muliplyCase = 2 * a * b;
        return plusCase > muliplyCase ? plusCase : multiplyCase;
    }
}

개념설명

1. 클래스 선언

class Solution {

✔️ 의미

  • Solution이라는 클래스 정의

 

2. 메서드 선언

public in solution(int a, int b) {

✔️ 의미

  • 정수 a, b를 받아서 두 가지 계산 결과 중 더 큰 값을 반환하는 메서드
요소 의미
public 외부 접근 가능
int 반환 타입
solution 메서드 이름
int a 첫 번째 정수
int b 두 번째 정수

 

3. 문자열 이어붙인 경우 계산

int plusCase = Integer.parseInt(String.valueOf(a) + String.valueOf(b));

✔️ 의미

  • 정수 a와 b를 문자열로 바꾼 뒤 이어 붙이고
  • 그 결과를 다시 정수로 변환해서 plusCase에 저장

📌 예시

a = 12
b = 34

String.valueOf(a) → "12"
String.valueOf(b) → "34"
"12" + "34" → "1234"
Integer.parseInt("1234") → 1234

 

4. String.valueOf() 설명

String.valueOf(값)

✔️ 의미

  • 어떤 타입이든 문자열(String)로 변환
  • null 안전
  • 실무에서도 자주 사용

 

5. Integer.parseInt() 설명

Integer.parseInt("숫자문자열")

✔️ 의미

  • 숫자로만 이루어진 문자열을
  • 정수(int)로 변환
  • ❌ "12a" → 오류 발생

 

6. 곱셈 경우 계산

int multiplyCase = 2 * a * b;

✔️ 의미

  • a와 b를 곱한 뒤
  • 그 결과에 2를 곱함

 

7. 삼항 연산자 사용

return plusCase > multiplyCase ? plusCase : multiplyCase;

✔️ 의미

  • 조건이 참이면 plusCase
  • 거짓이면 multiplyCase
  • 그 값을 반환

✔️ 삼항 연산자 구조

조건식 ? 참일 때 값 : 거짓일 때 값

✔️ 이 코드는 아래 if문과 동일

if(plusCase > muliplyCase) {
	return plusCase;
} else {
	return multiplyCase;
}

 

8. 반환과 동시에 메서드 종료

return ...

✔️ 의미

  • 값 반환
  • 메서드 즉시 종료

 

9. 클래스 종료

}

🔚 전체 실행 흐름 요약

  1. 정수 a, b 입력
  2. 문자열로 이어 붙인 값 계산
  3. 산술 곱셈 값 계산
  4. 두 값 비교
  5. 더 큰 값 반환

💡 핵심 포인트 정리

문법 의미
String.valueOf() 값 → 문자열
Integer.parseInt() 문자열 → 정수
* 곱셈
?: 삼항 연산자
return 결과 반환