将一个整形数转换成字符串形式

假如给你一个题目,将一个整型数转换成它的字符串形式,你会怎么做,你会这样做,new Integer(432).toString(),或者Integer.toString(432),再或者Integer.toString(432,10)这几个方法都能办到,但是他们是怎么实现的呢,假如让你去实现你怎么做呢,我们通常的做法是:

public static String convertIntToString(int i){
	int j = 0; //用来表示表示i中每一位上的数字
	int size = 0; //用来表示i的位数
	size = (i < 0) ? sizeOfInt(-i) + 1:sizeOfInt(i);
	char[] buf = new char[size];
		
	if(i < 0){
		i = -i;
		buf[0] = '-';
	}
		
	while(i != 0){
		j = i % 10;
		i = i / 10;
		buf[--size] = Digit[j];
	}
		
	return new String(buf);
}
	
public static int sizeOfInt(int x){
	int i = 0;
	while(x != 0){
		x /= 10;
		i++;
	}
	return i;
}
	
public static char[] Digit = {
	'0','1','2','3','4','5','6','7','8','9'
};

converIntToString()方法可以将任意的整形数转换成它的字符串形势,但是java库函数中是怎么实现的呢?在Integer类中的有个方法toString(int i)将整型转换成字符串表示,这个实现方法对渗透了对性能的考虑,对实际情况的考虑,让我们学习一下java源码。

	/**
	*将i转换成其字符串形式
	*/
    public static String toString(int i) {
		如果i是int的最小值,直接返回一个常数,不用进行计算,
		//不知道为什么没有对int的最大值进行优化,可能会在其他地方已经优化了,
        if (i == Integer.MIN_VALUE)  
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值