问题:输入一个8位 整数
输出0~9各数字在该整数出现次数
最好有代码public class Test1 { public static void main(String[] args) {
int n = 45788894;
int[] f = getNumberFrequency(n);
for(int i = 0; i < f.length; i++) {
System.out.println(i + " --> " + f[i]);
}
}
public static int[] getNumberFrequency(int num) {
int[] result = new int[10];
if(num < 0) {
num = -num;
}
while(num > 0) {
result[num % 10]++;
num /= 10;
}
return result;
}
}
另:想问一下,
int n = 45788894;
这里的n的数值是定随意设的吗?
还有 int[] f = getNumberFrequency(n);
这句看不太懂,能详细解释一下吗?
本人是新手,麻烦各位讲的详细些了,非常感谢!
输出0~9各数字在该整数出现次数
最好有代码public class Test1 { public static void main(String[] args) {
int n = 45788894;
int[] f = getNumberFrequency(n);
for(int i = 0; i < f.length; i++) {
System.out.println(i + " --> " + f[i]);
}
}
public static int[] getNumberFrequency(int num) {
int[] result = new int[10];
if(num < 0) {
num = -num;
}
while(num > 0) {
result[num % 10]++;
num /= 10;
}
return result;
}
}
另:想问一下,
int n = 45788894;
这里的n的数值是定随意设的吗?
还有 int[] f = getNumberFrequency(n);
这句看不太懂,能详细解释一下吗?
本人是新手,麻烦各位讲的详细些了,非常感谢!
//用户自定义的数字
int n = 45788894;
//调用getNumberFrequency()方法 返回值是一个数组
int[] f = getNumberFrequency(n);
for(int i = 0; i < f.length; i++) {
System.out.println(i + " --> " + f[i]);
}
}
/*静态函数 主要功能就是定义一个十位的数组把0的个数存在result[0]
把1的个数存在result[1] ..... 把9的个数存在result[9]
*/
public static int[] getNumberFrequency(int num) {
int[] result = new int[10];
if(num < 0) {
num = -num;
}
//循环语句
while(num > 0) {
//对数求余 相应的数组位置就加一
result[num % 10]++;
//对数求整后 去掉末位数字 转入下次循环
num /= 10;
}
return result;
}
}
0出现了:××次
1出现了:××次
2出现了:××次
3出现了:××次
4出现了:××次
...
0出现了:××次
1出现了:××次
2出现了:××次
3出现了:××次
4出现了:××次
...