답변:
Double.parseDouble()
a String
를 a 로 변환하는 데 사용할 수 있습니다 double
.
String text = "12.34"; // example String
double value = Double.parseDouble(text);
귀하의 경우에는 원하는 것처럼 보입니다.
double total = Double.parseDouble(jlbTotal.getText());
double price = Double.parseDouble(jlbPrice.getText());
double total = Double.parseDouble(jlbTotal.getText());
double total = Double.parseDouble(jlbTotal.getText().replaceAll("[^0-9.]", ""));
이 기본적으로 숫자 나 아닌 모든 문자를 대체합니다 - .
단지 수와 소수점 구문 분석 할 떠나, 아무것도에 있습니다.
Double
원시적 유형 대신 클래스의 결과를 검색하는 동안 여기에 유혹 된 사람들을 double
위해 Double.valueOf(String)
.
문자열을 10 진수 값으로 구문 분석하는 데 문제가있는 경우 숫자에서 ","를 "."로 바꿔야합니다.
String number = "123,321";
double value = Double.parseDouble( number.replace(",",".") );
문자열을 다시 이중으로 변환하려면 다음을 시도하십시오
String s = "10.1";
Double d = Double.parseDouble(s);
parseDouble 메소드는 원하는 효과를 얻을 수 있으며 Double.valueOf () 메소드도 마찬가지입니다.
double d = Double.parseDouble(aString);
문자열 aString을 double d로 변환해야합니다.
Double을 사용하여 문자열 값 을 구문 분석 하면됩니다.
String someValue= "52.23";
Double doubleVal = Double.parseDouble(someValue);
System.out.println(doubleVal);
Robertiano의 인용문을 다시 인용하십시오. 전체 게시물이 필요합니다!
다른 옵션 :
DecimalFormat df = new DecimalFormat();
DecimalFormatSymbols sfs = new DecimalFormatSymbols();
sfs.setDecimalSeparator(',');
df.setDecimalFormatSymbols(sfs);
double d = df.parse(number).doubleValue();
String double_string = "100.215";
Double double = Double.parseDouble(double_string);
다른 방법도 있습니다.
Double temp = Double.valueOf(str);
number = temp.doubleValue();
Double은 클래스이고 "temp"는 변수입니다. "숫자"는 찾고있는 마지막 숫자입니다.
이것이 내가 할 것입니다
public static double convertToDouble(String temp){
String a = temp;
//replace all commas if present with no comma
String s = a.replaceAll(",","").trim();
// if there are any empty spaces also take it out.
String f = s.replaceAll(" ", "");
//now convert the string to double
double result = Double.parseDouble(f);
return result; // return the result
}
예를 들어, 문자열 "4 55,63. 0"을 입력하면 두 배의 숫자 45563.0이 출력됩니다.
Double.parseDouble()
주변 try/catch
블록 없이 사용 하면 전위가 발생할 수 있습니다NumberFormatException
하면 입력 이중 문자열이 올바른 형식을 따르지 않을 .
Guava는 null
String을 파싱 할 수없는 경우 를 반환하는 유틸리티 메소드를 제공합니다 .
Double valueDouble = Doubles.tryParse(aPotentiallyCorruptedDoubleString);
런타임에 잘못된 형식의 문자열 입력이 다음에 null
할당됩니다.valueDouble
u가 int 데이터 유형을 num 및 num2에서 int로 변환해야 할 때 문자열 번호를 두 배로 변환하는 데 사용했습니다. Eng : "Bader Qandeel"을 사용하여 모든 문자열을 두 배로 늘 렸습니다.
public static double str2doubel(String str) {
double num = 0;
double num2 = 0;
int idForDot = str.indexOf('.');
boolean isNeg = false;
String st;
int start = 0;
int end = str.length();
if (idForDot != -1) {
st = str.substring(0, idForDot);
for (int i = str.length() - 1; i >= idForDot + 1; i--) {
num2 = (num2 + str.charAt(i) - '0') / 10;
}
} else {
st = str;
}
if (st.charAt(0) == '-') {
isNeg = true;
start++;
} else if (st.charAt(0) == '+') {
start++;
}
for (int i = start; i < st.length(); i++) {
if (st.charAt(i) == ',') {
continue;
}
num *= 10;
num += st.charAt(i) - '0';
}
num = num + num2;
if (isNeg) {
num = -1 * num;
}
return num;
}
String s = "12.34";
double num = Double.valueOf(s);