float에서 string으로 또는 string에서 float로 어떻게 변환 할 수 있습니까?
필자의 경우 2 값 문자열 (테이블에서 얻은 값)과 계산 한 부동 소수점 값 사이의 어설 션을 만들어야합니다.
String valueFromTable = "25";
Float valueCalculated =25.0;
float에서 string으로 시도했습니다.
String sSelectivityRate = String.valueOf(valueCalculated );
그러나 주장은 실패한다
답변
Java Float
클래스 사용
float f = Float.parseFloat("25");
String s = Float.toString(25.0f);
비교하려면 항상 문자열을 부동으로 변환하고 두 개의 부동으로 비교하는 것이 좋습니다. 이는 하나의 부동 소수점 숫자에 대해 문자열과 비교할 때 다른 여러 문자열 표현이 있기 때문입니다 (예 : “25”! = “25.0”! = “25.00”등).
답변
부동 소수점을 문자열로-String.valueOf ()
float amount=100.00f;
String strAmount=String.valueOf(amount);
// or Float.toString(float)
문자열을 부동으로-Float.parseFloat ()
String strAmount="100.20";
float amount=Float.parseFloat(strAmount)
// or Float.valueOf(string)
답변
이 코드 샘플을 시도해 볼 수 있습니다.
public class StringToFloat
{
public static void main (String[] args)
{
// String s = "fred"; // do this if you want an exception
String s = "100.00";
try
{
float f = Float.valueOf(s.trim()).floatValue();
System.out.println("float f = " + f);
}
catch (NumberFormatException nfe)
{
System.out.println("NumberFormatException: " + nfe.getMessage());
}
}
}
여기 에서 발견
답변
다음 코드가 도움이 될 것이라고 믿습니다.
float f1 = 1.23f;
String f1Str = Float.toString(f1);
float f2 = Float.parseFloat(f1Str);
답변
이것은 가능한 대답입니다. 이는 정확한 데이터를 제공하며 필요한 형식으로 소수점을 변경하면됩니다.
공개 클래스 TestStandAlone { / ** *이 방법은
* @param args void * / 공개 정적 무효 main (String [] args) { // TODO 자동 생성 메소드 스텁 { 플로트 f1 = 152.32f; BigDecimal roundfinalPrice = 새로운 BigDecimal (f1.floatValue ()). setScale (2, BigDecimal.ROUND_HALF_UP); System.out.println ( "f1->"+ f1); 문자열 s1 = roundfinalPrice.toPlainString (); System.out.println ( "s1"+ s1); } catch (예외 e) { // TODO 자동 생성 캐치 블록 e.printStackTrace (); } } }
출력은
f1-> 152.32 s1 152.32
답변
찾고 있다면 소수점 이하 두 자리를 말합니다 ..
Float f = (float)12.34;
String s = new DecimalFormat ("#.00").format (f);
답변
이 방법은 좋은 방법은 아니지만 쉽고 쉬운 방법은 아닙니다. 어쩌면 이것이 가장 효과적인 방법이 아니며 코딩 방법이 좋지 않지만 사용하기 재미 있다고 말할 수도 있습니다.
float val=10.0;
String str=val+"";
빈 따옴표는 문자열 유형에 ‘val’을 상향 변환하여 변수 str에 null 문자열을 추가합니다.