[99클럽 코테 스터디_ DAY 4] 문자열 정수 변환

yewon·2024년 7월 25일
0

스터디

목록 보기
4/22
post-thumbnail

문자열을 정수로 바꾸기

✏️오늘의 문제 : 문자열을 정수로 바꾸는 함수 만들기



💡나의 풀이


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

parserInt를 사용하여 문자열을 정수로 변환하였습니다.



💡다른 사람의 풀이


	 public int getStrToInt(String str) {
            boolean Sign = true;
            int result = 0;

      for (int i = 0; i < str.length(); i++) {
                char ch = str.charAt(i);
                if (ch == '-')
                    Sign = false;
                else if(ch !='+')
                    result = result * 10 + (ch - '0');
            }
            return Sign?1:-1 * result;
    }

각 부분 설명

  1. 변수 선언:

    • boolean Sign = true;: 이 변수는 숫자의 부호를 나타냅니다. 기본값은 true로 설정하여 양수를 의미합니다.
    • int result = 0;: 최종적으로 반환할 정수를 저장하는 변수입니다. 초기값은 0입니다.
  2. 문자열 반복:

    • for (int i = 0; i < str.length(); i++): 문자열의 길이만큼 반복하여 각 문자를 확인합니다.
  3. 문자 처리:

    • char ch = str.charAt(i);: 현재 인덱스 i에 있는 문자를 가져옵니다.
    • if (ch == '-'): 문자가 '-'일 경우, Signfalse로 설정하여 이 숫자가 음수임을 표시합니다.
    • else if (ch != '+'): 문자가 '+'가 아닐 경우, 숫자로 변환하여 result에 추가합니다. result = result * 10 + (ch - '0');에서 (ch - '0')는 문자를 정수로 변환하는 방법입니다. 예를 들어, '3'은 3으로 변환됩니다.
  4. 결과 반환:

    • return Sign ? result : -result;: 부호에 따라 결과를 반환합니다. Signtrue이면 result를 그대로 반환하고, false이면 result에 음수를 붙여 반환합니다.

0개의 댓글