스폰서 링크 Show 숫자 123 과 문자열 "123"은 다릅니다. 숫자 123에 1을 더하면 124 가 되지만, 문자열 "123"에 1을 더하면 "1231"이 되어 버립니다. 따라서 문자열로 된 숫자가 숫자 구실을 하도록 하려면, 그 문자열을 숫자로 변환해 주어야 합니다. 문자로 된 숫자를, 진짜 숫자로 변환 예제소스 파일명: Foo.java public class Foo { String s = "1000"; // 문자열 정의
int i = Integer.parseInt(s) + 1; // 32비트 정수로 그리고 1을 더하기 long L = Long.parseLong(s) + 1; // 64비트 정수로 그리고 1을 더하기 float f = Float.parseFloat(s) + 1.0F; // 32비트 실수로 그리고
1을 더하기 double d = Double.parseDouble(s) + 1.0; // 64비트 실수로 그리고 1을 더하기 } 전화 번호나 주민등록번호 등도 실은 숫자가 아니라 문자열입니다. 왜냐하면 전화번호에 1을 더하거나 하는 사칙연산을 해 봐도 아무 의미가 없기 때문입니다. 물론 더해지지도 않겠지요. 에러 처리public
class Foo { String s = "1000.0"; // 문자열 정의 try { // 에러: java.lang.NumberFormatException: For input string: "1000.0" } 소수점이 있는 문자열 "1000.0" 을, 정수로 변환하려 했기에 에러가 났습니다. 숫자로 변환할 수 없는 경우에는 NumberFormatException 이 발생합니다. "문자로 된 숫자"에, 소수점이 있을 수도 있고 없을 수도 있는 경우에는, 다음과 같은 방법으로 이 문제를 해결할 수 있습니다. public class Foo { String s = "1000.539"; // 문자열 정의 int i = (int) Double.parseDouble(s) + 1; // 실수로 변환 후, 정수로 캐스팅, 그리고 1을 더하기 } 소수점이 있든 없든 아무 숫자로 된 문자열을, 정수 숫자로 변환하기 위해서는 위의 방법을 쓰면 됩니다. 즉, parseInt() 는 "1000.0" 이런 실수 형식의 문자열을 받지 못하지만 parseDouble() 은 아무 형식이든 받을 수 있습니다. ▶▶ 자바,Java] 숫자를 문자열로 변환, 정수/실수 문자로; Number to String ▶▶ Java/자바] 16진수 문자열을 정수로 변환 계산; 십육진수 헥사(Hex) 문자열을 정수로 더 읽기: ☞ 자바 | Java 프로그래밍 구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다. 블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 주소를 리더기에 등록하시면 됩니다.[java/spring] 문자열을 실수로 변경하는 방법 / parse string to floatjava 에서 특정 문자열을 정수 혹은 실수로 변환해야 하는 경우가 많습니다. 그중에서 실수로 변환해야 하는 경우에는 아래와 같은 방법으로 하시면 됩니다. 우선 아래와 같은 문자열이 있다고 가정하고,
실수로 변환하려면 아래처럼 Float class 의 valueOf 를 이용하시면 됩니다.
그러면 결과는 실수로 1.1 이 나오게 됩니다! 참고들 하세요! 안녕하세요 자바 프로그래밍을 하다 보면 String으로 되어있는 변수를 숫자로 변환해서 계산을 실행하는 경우 정수로 되어있는 숫자를 실수로 변경해서 계산해야 하는 등 여러 상황에서 형 변환을 해서 구해야 할 때가 많습니다 프로그래밍을 시작한 지 얼마 안 되신 분이라면 가끔 어떻게 사용하는지 까먹을 때가 있습니다 개발을 많이 했어도 가끔 생각이 안 나서 멈칫 할때가 있네요 ㅎㄷㄷ;; 이번 포스팅에서는 자바의 형 변환(문자형, 정수형, 실수형) 방법에 대해서 알아보겠습니다 목차 문자형 -> 숫자문자열을 숫자(정수, 실수)로 변경하는 방법입니다 String -> Int 아마 프로그래밍을 하는 분들이라면 가장 많이 사용하실 겁니다 다양한 곳에서 사용되는 String을 Int로 변환하는 방법입니다!! Integer.parseInt(String값); Integer.valueOf(String값); 을 사용하여 변환할 수 있습니다
String -> Double, Float String -> Int보다는 많이 사용하지 않지만 그래도 어느 정도 사용하는 double과 float의 변환 방법입니다 valueOf와 parse를 사용하여 double과 float를 변환해줍니다 Double.valueOf(String값); Double.parseDouble(String값); Float.valueOf(String값); Float.parseFloat(String값); 을 사용해서 변환할 수 있습니다
String -> Long, Short 자주 쓰지 않는 Long과 Short이지만 그래도 한 번 사용법을 적어봅니다 마찬가지로 valueOf와 parse를 사용하여 변환할 수 있습니다
아래는 전체 코드 및 결과 화면입니다 전체 코드
결과 화면아래는 위의 코드를 실행한 결과 화면입니다 숫자 -> 문자형숫자(정수, 실수)를 문자열로 변경하는 방법입니다 Int -> String 개발을 하다 보면 숫자에서 문자형으로 전환되는 경우 가장 많이 사용할 방법입니다 String.valueOf(int값); Integer.toString(int값); 을 사용하여 변경할 수 있습니다
Double, Float -> String 실수형을 String으로 변환하는 방법입니다 Int형을 String으로 변환하는 방법만큼 많이 사용하는 방법일 겁니다 String.valueOf(double값); String.valoue(float값); Double.toString(double값); Float.toString(float값); 을 사용하여 실수형을 String으로 변환합니다
Long, Short -> String 마지막으로 잘 사용하지 않는 방법이지만 Long, Short를 String으로 변환하는 방법입니다 위에 String -> Long, Short로 변경하는 방법을 추가했기 때문에 이 방법을 추가합니다 String.valueOf(Long값); Long.toString(Long값); String.valueOf(Short값); Short.toString(Short값); 을 사용하여 Long과 Short를 변환합니다
여기까지 숫자를 문자형으로 변환하는 방법에 대해서 알아봤습니다 전체 코드와 결과 값을 확인해보겠습니다! 전체 코드
결과 화면위의 전체 코드를 실행한 화면입니다 정수 <-> 실수정수를 실수로 변환, 실수를 정수로 변환하는 방법입니다 Int -> Double, Float Int를 Double와 Float로 변환하는 방법입니다 간단하게 앞에 (double)와 (float)를 붙여서 캐스팅을 해줍니다
Double, Float -> Int Double과 Float를 변환하는 방법입니다 double은 (int)를 사용하여 캐스팅을 하면 됩니다 실수로 캐스팅하는 경우 정수 외의 나머지 부분은 버림 처리를 합니다 float의 경우 예전에는 (int)를 사용하여 캐스팅을 하는 게 됐었던 것 같았는데 지금은 막힌 것 같습니다 float로 캐스팅하기 위해서는 Math메서드를 사용하여 반올림, 올림, 내림을 사용하여 정수형으로 바꾼 후 캐스팅을 해야 오류 없이 변환이 가능합니다
이제 전체 코드와 결과 화면을 통해서 어떻게 출력되는지 알아보겠습니다! 전체 코드
결과 화면 double에서 int로 형 변환을 하는 경우 자동으로 버림 처리하는 것을 확인할 수 있습니다 여기까지 JAVA에서 문자형, 정수형, 실수형의 형 변환 방법에 대해서 알아봤습니다! 형 변환에 대해서 공부를 하는 개발자분들, 형 변환 방법이 갑자기 생각이 안 되는 분들에게 제 글이 도움이 되셨으면 좋겠습니다 |