感觉搜这个的比较多,把这个完善一下。希望对你们有帮助。
我博客的其他东西也还行的哈,可以看看。
java获取整数各个位上的数
思想是:先取余,然后除以10,得到temp,再取余,再除以10 ,得到temp,依次类推
下面是我写项目的一部分,写了循环结构获取每一位的数字,把代码贴出来了,
这个函数的作用是获取每一位数字,然后依次画到屏幕上。
public void drawValue(Graphics g){
// System.out.println(value);
int power = value;
if(power > 99999){
power = 99999;
}
int[] arr = new int[5];
for (int i = 0; i < 5; i++) {
arr[i] = power % 10 ;
power /= 10;
// System.out.println(arr[i]);
}
/*
* 依次画出每一位的部分
* */
int temp = 0; // 用于计算是否是高位为零
for (int i = 4; i >= 0; i--) {
if (arr[i] != 0 || (temp > 0)){
// System.out.println(arr[i]);
g.drawImage(imgs[ arr[i] ],x - i * 25,y,null);
temp++;
// System.out.println(arr[i]);
}
}
}
未用循环结构:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc =new Scanner(System.in);
int num=sc.nextInt();
int f[]=new int[10];
//我写的是四位数,可以思考下写成循环的形式,思想都是一样的
int temp = num;
f[0] = temp % 10;
temp = temp / 10;
f[1] = temp % 10;
temp /= 10;
f[2] = temp % 10;
temp /= 10;
f[3] = temp % 10;
System.out.print(f[3]+" "+f[2]+" "+f[1]+" "+f[0]);
}
}