数字转string java_Java™ 教程(在数字和字符串之间转换)

在数字和字符串之间转换

将字符串转换为数字

通常,程序以字符串对象中的数字数据结束 — 例如,用户输入的值。

包装原始数字类型(Byte、Integer、Double、Float、Long和Short)的Number子类每个都提供一个名为valueOf的类方法,该方法将字符串转换为该类型的对象。下面是一个示例ValueOfDemo,它从命令行获取两个字符串,将它们转换为数字,并对值执行算术运算:

public class ValueOfDemo {

public static void main(String[] args) {

// this program requires two

// arguments on the command line

if (args.length == 2) {

// convert strings to numbers

float a = (Float.valueOf(args[0])).floatValue();

float b = (Float.valueOf(args[1])).floatValue();

// do some arithmetic

System.out.println("a + b = " +

(a + b));

System.out.println("a - b = " +

(a - b));

System.out.println("a * b = " +

(a * b));

System.out.println("a / b = " +

(a / b));

System.out.println("a % b = " +

(a % b));

} else {

System.out.println("This program " +

"requires two command-line arguments.");

}

}

}

以下是使用4.5和87.2作为命令行参数时程序的输出:

a + b = 91.7

a - b = -82.7

a * b = 392.4

a / b = 0.0516055

a % b = 4.5

包装原始数字类型的每个Number子类还提供了一个parseXXXX()方法(例如,parseFloat()),可用于将字符串转换为原始数字,由于返回基本类型而不是对象,因此parseFloat()方法比valueOf()方法更直接,例如,在ValueOfDemo程序中,我们可以使用:

float a = Float.parseFloat(args[0]);

float b = Float.parseFloat(args[1]);

将数字转换为字符串

有时你需要将数字转换为字符串,因为你需要对其字符串形式的值进行操作,有几种简单的方法可以将数字转换为字符串:

int i;

// Concatenate "i" with an empty string; conversion is handled for you.

String s1 = "" + i;

或:

// The valueOf class method.

String s2 = String.valueOf(i);

每个Number子类都包含一个类方法toString(),它将其基本类型转换为字符串,例如:

int i;

double d;

String s3 = Integer.toString(i);

String s4 = Double.toString(d);

ToStringDemo示例使用toString方法将数字转换为字符串,然后程序使用一些字符串方法来计算小数点前后的位数:

public class ToStringDemo {

public static void main(String[] args) {

double d = 858.48;

String s = Double.toString(d);

int dot = s.indexOf('.');

System.out.println(dot + " digits " +

"before decimal point.");

System.out.println( (s.length() - dot - 1) +

" digits after decimal point.");

}

}

该程序的输出是:

3 digits before decimal point.

2 digits after decimal point.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值