💬 문제 설명
이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return하도록 solution 함수를 완성해주세요.
🚫 제한 사항
- return 값은 이진수를 의미하는 문자열입니다.
- 1 ≤ bin1, bin2의 길이 ≤ 10
- bin1과 bin2는 0과 1로만 이루어져 있습니다.
- bin1과 bin2는 "0"을 제외하고 0으로 시작하지 않습니다.
📢 입출력 예
👨🏫 입출력 예 설명
📃 제출 코드
class Solution {
public String solution(String bin1, String bin2) {
String answer = Integer.toBinaryString(Integer.parseInt(bin1, 2) + Integer.parseInt(bin2, 2));
return answer;
}
}
✏ 해결방법 & 배운점
`Integer.parseInt()` 메서드는 주로 문자열을 정수형(int)으로 변환하는 데 사용됩니다. 단순 문자열을 정수형으로 바꿀 수 있는 기능 뿐만아니라 변환할 문자가 어떤 진수 체계로 표현되어있는지 지정할 수 있습니다.
`Integer.parseInt(String s, int radix)` 메서드는 문자열 `s`를 `radix` 진수로 해석하여 정수로 변환할 수 있습니다.
- s: 변환할 문자열입니다. 이 문자열은 진수에 따라 숫자로 표현된 텍스트입니다.
- radix: 변환할 문자열 s가 어떤 진수 체계로 표현되었는지를 지정합니다. 주로 2 (이진수), 8 (8진수), 10 (10진수), 16 (16진수) 등이 사용됩니다.
또한, `Integer` 클래스에는 정수를 이진수 문자열로 변환하는 `Integer.toBinaryString(int i)` 메서드도 제공됩니다.
이 메서드는 주어진 정수를 이진수로 변환하여 문자열로 반환합니다. 위 와같은 메서드를 사용혀 문제를 쉽게 해결 할 수 있었습니다.
'PS > 프로그래머스 입문 100제' 카테고리의 다른 글
[프로그래머스] LV.0 문자열 계산하기 - 자바 [75/100] (0) | 2024.06.28 |
---|---|
[프로그래머스] LV.0 잘라서 배열로 저장하기 - 자바 [74/100] (0) | 2024.06.28 |
[프로그래머스] LV.0 소인수 분해 - 자바 [72/100] (0) | 2024.06.28 |
[프로그래머스] LV.0 컨트롤 제트 - 자바 [71/100] (0) | 2024.06.28 |
[프로그래머스] LV.0 7의 개수 - 자바 [70/100] (0) | 2024.06.28 |