안녕하세요!
오늘은 제가 개인적으로 너무 헷갈렸던 부분에 대해 정리해 보도록 하겠습니다.
정수형(int, long형) → 문자열
방법1.
Integer.toString(int값) & Long.toString(long값)
- 문자열로 바꾸고자 하는 값을 위에 나와있는 이미지처럼 형변환 시켜주면 됩니다!!
방법2.
String.valueOf(int값) & String.valueOf(long값)
- 문자열로 바꾸고자 하는 값을 위에 나와있는 이미지처럼 형변환 시켜주면 됩니다!!
방법3.
정수형값 + "" ( = 문자열을 더해서 문자열로 바꾸는 방법)
- 문자열은 다른 형과 더하면 "문자열"로만 출력되는 점을 이용했습니다.
문자열 → 정수형(int, long형)
방법1.
Integer.parseInt(String값) & Long.parseLong(String값)
cf ) 중간에 쓰여있는 'parse' 뜻이 궁금하여 검색해봤습니다.
(혹시 저처럼 궁금하신 분 있으실까봐 작성합니다..ㅎㅎ)
방법2.
Integer.valueOf(String값) & Long.valueOf(String값)
이제 위의 정리된 내용으로 코딩테스트 2개의 문제를 풀어보도록 하겠습니다.
첫 번째 문제 :
- 문자열을 정수형 int로 바꾸는 문제였습니다.
- 해설 관련해서는 위에 다 설명했기때문에 따로 또 적진 않겠습니다!
두 번째 문제 :
일단 이 문제를 푸는 방법에는 여러가지가 있는데요.
이 푸는 방법에 대해서도 밑에 깔끔하게 정리해 보도록 하겠습니다.
- substring을 이용하여 자연수를 뒤집어 배열로 만들고 싶어서 쓴 방법입니다.
- 일단 "substring"은 문자열을 원하는 위치에서 잘라야하는 경우에 사용합니다.
- 제가 필기한 내용을 보면 (beginIndex, endIndex)라고 표시 했는데요. (Index는 0번부터 시작합니다!!!!!)
- beginIndex : 인덱스 몇번째부터 시작할지의 값! (예 : 인덱스 시작부분이 4라고 적으면 4번째 포함의 값이니깐 인덱스 4번째부터의 값이 출력되는 것입니다.)
- endIndex : 몇번째 이전의 값! (예 : 인덱스 5이면 5번째 이전의 값이니깐 인덱스 4번째의 값이 출력되는 것입니다.)
- 이해를 돕기 위해서 밑의 이미지를 추가하였습니다.
2. while문을 이용해서 푼 방법입니다.( 출처 : 다른 사람 풀이 참고!)
혹시 위의 이미지 내용이 이해가 안가시는 분이 계실까봐, 밑에 자세히 적어보았습니다.
- 일단 정수형을 문자열로 변환한 뒤에, 문자열의 길이만큼 배열을 초기화 해줬습니다.
- int형 cnt를 선언하고 0으로 초기화한 뒤,
- 10으로 나눈 나머지는 일의 자리만 출력되는 부분을 이용했습니다.
- 일의 자리를 뽑아낸 n은 일의 자리를 없애줘야되니깐 10을 몫만 출력되게 나눠줬어요
- 이 다음에는 cnt를 1씩 증가시켜서, 배열에 하나씩 입력하게 했습니다.
오늘도 읽어주셔서 감사합니다.
제 블로그가 무조건 정답은 아니니 참고삼아봐주시면 감사하겠습니다.
틀린 부분이나 추가하고 싶은 부분 있으시면 댓글 남겨주시면 저에게 도움이 많이 될 것 같습니다. :-)
오늘의 요약
String.valueOf(정수형값) : 정수형 → 문자열
Integer.valueOf(String값) : 문자열 → 정수형
valueOf는 도트(.) 앞에 무엇으로 변환하고 싶은지 적습니다.
'TIL(Today I Learned)' 카테고리의 다른 글
[Java/코딩테스트] 하샤드 수 판별 (0) | 2024.08.05 |
---|---|
[Java/코딩테스트] 정수 내림차순으로 배치하기 (0) | 2024.08.02 |
[Java/코딩테스트] 약수의 합 (0) | 2024.07.31 |
[MYSQL] Limit문(= 상위 n개의 레코드 구하기) (0) | 2024.07.30 |
[Java / 코딩테스트] 배열의 평균값 구하기 (0) | 2024.07.29 |