Есть строчный массив, нужно с него получить значение и перевести его в double вот так: "1.2s" = 1.2; Как это лучше сделать?
public class SimpleDotComTestDrive {
public static void main (String [] args) {
String[] iso_third = { "32s", "1s", "1.2s", "1.6s", "2s", "2.5s", "3s" };
String iso_string = (iso_third[1]).toString();
double iso_num = Double.valueOf(iso_string);
System.out.println(iso_num);
}
}
Код выдает ошибку:
Exception in thread "main" java.lang.NumberFormatException: For input
string: "1s"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at java.lang.Double.valueOf(Unknown Source)
at SimpleDotComTestDrive.main(SimpleDotComTestDrive.java:6)
Можно так:
package uz.gigalab.test;
public class SimpleDotComTestDrive {
public static void main(String[] args) {
String[] iso_third = {"32s", "1s", "1.2s", "1.6s", "2s", "2.5s", "3s"};
for (String s : iso_third) {
s = s.replaceAll("[a-zA-Z]", "");
double iso_num = Double.parseDouble(s);
System.out.println(iso_num);
}
}
}
Продвижение своими сайтами как стратегия роста и независимости