获得一个整数的各个位置上的数的和==几个方法_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 获得一个整数的各个位置上的数的和==几个方法

获得一个整数的各个位置上的数的和==几个方法

 2011/11/9 8:27:07  Hxuejie  http://hxuejie.iteye.com  我要评论(0)
  • 摘要:今天在BD上回答问题的时候看到的:问题:编写一个方法,实现求某个整数的各个位上的数字之和此时的我就想到了一种方法,真是可悲啊。。。惭愧!首先附上我的方法:解决方法一:publicstaticintsum(intnum){intlen=String.valueOf(num).length();//得到数的长度intreturnNum=0;//最后返回值for(inti=0;i<len;++i){//按照数的长度计算各个位上的值,并叠加intoperationNum=(int)Math
  • 标签:方法 一个

今天在BD上回答问题的时候看到的:
问题:编写一个方法,实现求某个整数的各个位上的数字之和

此时的我就想到了一种方法,真是可悲啊。。。惭愧!

首先附上我的方法:
解决方法一:

public?static?int?sum(int?num)?{
????????????????int?len?=?String.valueOf(num).length();?//得到数的长度
????????????????int?returnNum?=?0;?//最后返回值
????????????????for(int?i?=?0?;?i?<?len;?++i)?{//按照数的长度计算各个位上的值,并叠加?
????????????????????????int?operationNum?=?(int)?Math.pow(10,?i);?//获得计算数(为10的N次方),用于计算得到各个位置上的数
????????????????????????int?result?=?(num?%?(operationNum*10))/operationNum;?//得到当前位置上的数
????????????????????????returnNum?+=?result;?//将当前位置上的数叠加到返回值
????????????????}
????????????????return?returnNum;?//返回返回值(各个位置上的数的和)
????????}


自己感觉还不错,呵呵...
然后又看了下别人的做法,真让我自叹不如啊!学习了!
其方法,简单、有效!
开眼了...哈哈!
值得学习一下!


不多说,直接附上方法:
解决方法二:

public?static?int?qiuhe(int?num)?{
????????????????int?result?=?0;
????????????????String[]?eachNums?=?(num?+?"").split("");?//直接独立出各个位置上的数,不错!
????????????????for?(int?i?=?1;?i?<=?eachNums.length?-?1;?i++)?{
????????????????????????result?+=?Integer.parseInt(eachNums);

}

return?result;

}




解决方法三:

public?static?int?method(int?num){

????int?ret?=?0;

????while(num>0){

?????????ret?+=?num%10;?//获得个位上的数

?????????num?/=?10;?//去除当前个位,将十位上的数变成个位。感觉很不错,学习!

????}

????return?ret;

}?


本贴一共附上以上三个方法
大家觉得那个方法好,或者有什么意见可以说一下哦!
互相学习一下嘛!
当然如果大家有什么新的方法也可以加上哦,供他人学习!
你知-->我知-->他知!

发表评论
用户名: 匿名