----PS:刚看到,楼上解决了作者: 权跃杰 时间: 2012-7-31 00:45
没有更直接的方法吗,如果这样的话,要求个位数的立方加上十位数的立方加上百位数的立方等于这个数本身,这样写的时候,效率不是很低作者: 尹善波 时间: 2012-7-31 01:28
/*
思路:想定义一个整型,将整型转化为字符串类型,然后将字符串转化为
数组,对数组的操作遍历就可以得到各个位置的数字
*/
class Trans
{
public static void main(String[] args)
{
int i=45848;
String s=Integer.toString(i);//整型转化为字符串
char[] ch=s.toCharArray();//字符串转化为数组
for (int x=0;x<ch.length ;x++ )//遍历出各个位置的数字
{
System.out.println(ch[x]);
}
}
}
作者: 戚题彪 时间: 2012-7-31 01:57
此处可以根据传入的值来获取不同多位数的每位上的值:
public class Qwei {
public static void main(String[] args) {
int i = Integer.parseInt(args[0]); //传入i的值
String str = Integer.toString(i); //把i转化成String类型字符串
int n = str.length(); //求字符串的长度即整形数的位数
for(int k=0;k<n;k++){
int now = i/(int)Math.pow(10,k); //当前值
System.out.println("第"+(k+1)+"位的值为:"+now%10);//从最低位开始算起
}
}
}作者: 王峰 时间: 2012-7-31 16:17
有啊,你这样做,比如 有一个数字为:789123;我写个程序你看下,希望对你有提示作用
int a = 789123;
Integer aInt = new Integer(a);
String str = aInt.toString();
//在定义一个整型数组,把个,十,百位等依次放在数组中,这里数组下标为0的我给你放了个位,你看看
int[] num = new int[str.length];
//然后把字符串转化成字符数组
char[] ch = str.toCharArray(); 现在ch里面其实已经是存放着各位的数字,只是字符形式而已,
//num数组依次保存的数字,为:个位,十位,百位,千位。。。
for(int i = str.length-1,j = 0; i >= 0; i --,j++){
num[j] = ch[i] - 48; //这里减去48是因为数字字符转化为十位数时,是从48开始的,
}
//你把这些语句封装成一个方法,或者类,直接送参数调用即可,嘿嘿,希望有助于你开拓思路 作者: 牛杨 时间: 2012-8-2 12:33
java API中没有这样的方法,需要自己写的。