java中,String字符串转化为数字
String s="00000123"
我直接使用Integer.parseInt(s),提示出错。
不知道要怎样才能把字符串s正确地转换成数字123。
请大家指教下 展开
java中,String字符串转化为数字的方法有:
1、转化为整型数字
(1)Integer.parseInt(String s) ,代码示例如下:
public class Test {
public static void main(String args[]){
String s = "123";
int num = Integer.parseInt(str);
int sum = num + 100;
System.out.println("Result is: "+sum); // 输出结果为:Result is: 223
}}
(2)Integer.valueOf(String s),代码示例如下:
public class Test2 {
public static void main(String args[]){
String s = "-100";
int num = Integer.valueOf(str);
int sum = num + 101;
System.out.println("Result is: "+sum); // 输出结果为:Result is: 1
} }
2、转化为浮点型数字
(1)Float.parseFloat(String s),代码示例如下:
public class Test {
public static void main(String args[]){
String s = "123.11";
float num = Float.parseFloat(s);
float sum = num + 100;
System.out.println("Result is: "+sum); // 输出结果为:Result is: 223.11
}}
(2)Double.parseDouble(String s),代码示例如下:
public class Test2 {
public static void main(String args[]){
String s = "100.01";
double num = Double.parseDouble(s);
double sum = num + 100;
System.out.println("Result is: "+sum); // 输出结果为:Result is: 200.01
}}
题目中要求的将String s="00000123"转化为123的具体代码如下:
public class Test {
public static void main(String args[]){
String s = "00000123";
int num = Integer.parseInt(s);
System.out.println("Result is: "+num); // 输出结果为:Result is: 123
}}
扩展资料:
1、Java中整形、浮点类型转化为字符串:
public class Test {
public static void main(String args[]){
int i = 11;
String s = i + ""; // 方法一
String s = String.valueOf(i); // 方法二
String s = Integer.toString(i); // 方法三
} }
2、Java中判断字符串是否为数字:
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
} }
return true;
}
参考资料来源:Java官方文档-Class String
java中String字符串转化为数字:
转换为浮点型:
使用Double或者Float的parseDouble或者parseFloat方法进行转换
String s = "123.456 "; //要确保字符串为一个数值,否则会出异常
double d = Double.parseDouble(s);
float f = Float.parseFloat(s);
转换为整型:
使用Integer的parseInt方法进行转换。
int i = Integer.parseInt([String]);//[String]待转换的字符串
int i = Integer.parseInt(s);
要定义一个int类型的变量来接收。
你转换成int了,但是你没有定义一个变量来接收你所转换的值,当然会报错了。
int i=Integer.parseInt(str);
System.out.println(i);
我这里是ok的。
参考资料: 天高云淡(◆ノSimply)