자바 새로 알게된것 3

Ada·2022년 9월 28일
0

항해TOL

목록 보기
9/63

- 숫자 진법 변환

10진법 숫자를 7진법으로 변환

주어진 값을 2로 나눈 나머지를 문자열에 더해간다. 이때 뒤에서부터 더해가야 하기에 새로 더해주는 값은 문자열의 앞에 더해준다.

int num = 48;
String ans = "";
while (num > 0) {
	ans = (num % 7) + ans;
    num /= 7;
}
//숫자로 출력하고 싶다면 Integer.parseInt(ans)

7진법 숫자를 10진법으로 변환

Integer.parseInt(문자열, 진법)

만약 int형의 진법을 바꾸고 싶다면 먼저 문자열 형태로 변환해야 한다.

int num = 100;
String str = num + "";
int ans = Integer.parseInt(str, 7);

- 숫자를 거꾸로 출력하기

마지막 숫자부터 얻기 위해서 주어진 num을 10으로 나눈 나머지를 결과값인 ans에 더해준다.
이때, 기존에 구해놓은 결과값에 10을 곱해서 자리값을 구분해준다.

int num = 12345;
int ans = 0;
while (num > 0) {
	ans = (ans * 10) + (num % 10);
    num /= 10
}

- 배열의 중복 요소 지우기

contains 메소드를 쓰면 된다.

public int[] solution(int []arr) {
        List<Integer> list = new ArrayList<>();
        for (int num : arr) {
            if(!list.contains(num)) list.add(num);
        }
profile
백엔드 프로그래머

0개의 댓글