✏️오늘의 문제 : 문자열을 정수로 바꾸는 함수 만들기
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;
}
변수 선언:
boolean Sign = true;
: 이 변수는 숫자의 부호를 나타냅니다. 기본값은 true
로 설정하여 양수를 의미합니다.int result = 0;
: 최종적으로 반환할 정수를 저장하는 변수입니다. 초기값은 0입니다.문자열 반복:
for (int i = 0; i < str.length(); i++)
: 문자열의 길이만큼 반복하여 각 문자를 확인합니다.문자 처리:
char ch = str.charAt(i);
: 현재 인덱스 i
에 있는 문자를 가져옵니다.if (ch == '-')
: 문자가 '-'일 경우, Sign
을 false
로 설정하여 이 숫자가 음수임을 표시합니다.else if (ch != '+')
: 문자가 '+'가 아닐 경우, 숫자로 변환하여 result
에 추가합니다. result = result * 10 + (ch - '0');
에서 (ch - '0')
는 문자를 정수로 변환하는 방법입니다. 예를 들어, '3'은 3으로 변환됩니다.결과 반환:
return Sign ? result : -result;
: 부호에 따라 결과를 반환합니다. Sign
이 true
이면 result
를 그대로 반환하고, false
이면 result
에 음수를 붙여 반환합니다.