오늘 공부한 내용

  • Spring 숙련주차 1주차 영상 재시청
  • Spring 숙련주차 1주차 과제 해석영상 공부
  • 코드카타 2문제

 

어려웠던 내용

  •  회원가입을 위한 JWT 구조작성

 

새로 알게된점

  • Integer.parseInt() //  문자를 정수로 바꾸는 함수

먼저 이것에 대해 알게된 것은 코드 카타를 하던중이다. 해당문제는 

문자열을 정수로 바꾸기

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.

제한 조건

  • s의 길이는 1 이상 5이하입니다.
  • s의 맨앞에는 부호(+, -)가 올 수 있습니다.
  • s는 부호와 숫자로만 이루어져있습니다.
  • s는 0으로 시작하지 않습니다.

입출력 예

예를들어 str이 1234이면 1234를 반환하고, -1234이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.

메서드는 일부 문자열을 입력으로 받고 필요한 정보를 "추출"하여 호출 클래스의 객체로 변환합니다.

 

숫자를 문자형태로 바꾸는 toString에 대해서는 알고 잇었지만 문자를 숫자로 바꾸는 메서드는 알지를 못했다.

이후 답을 찾아보았는데 굉장히 간단한 코드여서 맥이 빠졌다.

class Solution {
    public int solution(String s) {
        int answer = Integer.parseInt(s);
        return answer;
    }
}

위와 같이 문자형태인 n을 바꾸고자하는 정수형태로 바꾸기 위해서

Integer.parseInt(s) 형태처럼 앞에 래퍼클래쓰를 적은후 parse뒤에 자료형 을 적으면 된다.

즉 int 뿐만 아니라 byte, short, long, float, double 등 정수 와 관련된 타입은 전부 가능하다.

그리고 int로 숫자를 바꿀시 기본적으로 십진법을 적용하며 만약 원한다면 8진수, 16진수 를 적용하여 바꿀수도 있다.

 

방법은 Integer.parseInt(String s, int radix) 형태로 코드를 적는 것이며 여기서 숫자형의 문자열을 첫번째 인자 값 (String s) 으로 받고 변환할 진수값 (int radix)을 입력하면 해당 진수에 맞춰 Integer 형으로 변환된다.

class Javaparse {
    public static void main(String args[]){
           int x = Integer.parseInt("12");
           double c = Double.parseDouble("12");
           int b = Integer.parseInt("100",2);

           System.out.println(Integer.parseInt("12"));
           System.out.println(Double.parseDouble("12"));
           System.out.println(Integer.parseInt("100",2));
           System.out.println(Integer.parseInt("101", 8));
   }
}

이것에 대한 출력값으로

 12 
 12.0 
 4 
 65

이렇게 출력되는것을 확인 할 수 있다.

 

오늘의 느낀점

 간단한 코드카타 라고 볼수 있겠지만 정말 많은 형태의 메서트가 있다는걸 알게됬다.
알고리즘을 더 잘풀기위해서는 더욱더 많은 문제를 접해서 다양한 메서드를 겪어봐야 실력이 향상이 될거 같다.

+ Recent posts