문자열이 java에서 유효한 float이고 Regex를 사용하고 싶지 않은지 확인하려고합니다. 나의 중앙에 오는 첫번째 물건은 Float.parseFloat(String)
와 동등한 것 인 Float.valueOf(String)
를 사용한다. 이 함수는 NumberFormatException
을 던지지 않습니다.유효한 문자로 자바에서 float 구문 분석
나는 이것이 java에서 유효한 값 일 수 있음을 알고 있습니다. 그러나 다른 환경과 언어와 의사 소통하기를 원할 때 이것들은 유효하지 않습니다 !!!
System.out.println(Float.parseFloat("4.f"));
System.out.println(Float.parseFloat("2.d"));
System.out.println(Float.parseFloat("0.45d"));
System.out.println(Float.parseFloat("0.3f"));
System.out.println(Float.parseFloat("0d"));
System.out.println(Float.parseFloat("0d"));
결과 :
4.0
2.0
0.45
0.3
0.0
0.0
나는 내 자신의 파서를 쓸 수 있습니다 알고이 선행을 잡을 수있는 우아한 방법이 있지만 성능에 영향을 루프입니다. 이견있는 사람? 사전에
감사합니다 ...
은 "유효"경우 : 브라질, 예를 들어, 우리는 소수점 표시로 쉼표를 사용 Java 값이 응용 프로그램에 유효하지 않습니까? – holtc
로 다시 변환 당신이 문자열로 변환 할 수 –
다른 언어에서 값이 유효하지 않은 경우 Java에서 오류가 발생하는 이유는 무엇입니까? 유일한 방법은 구문 분석하기 전에 문자열의 문자를 확인하는 것입니다. –