java中求一个整数个十百千位的方法是什么?

如题所述

第1个回答  2018-03-08
import java.util.Scanner;
public class Test{
static int[] a=new int[4];//a[0]~a[3]:个位数~千位数
public static void main(String[] args){
Scanner in=new Scanner(System.in);
try{
System.out.print("输入一个整数");
int x=in.nextInt();
getValue(x);//求出个位数~千位数的方法
in.close();
}
catch(Exception e){
e.printStackTrace();
}
}
public static void getValue(int x){
int x1=x;
//先得到x的位数
int i=1,k,count=0;//count为x的位数
for(i=0;i<4;i++)//计算到千位即可
if(x1/Math.pow(10, i)!=0)
count++;
for(k=0;k<count;k++){//依次求出个位数~千位数
a[k]=x1%10;
x1=x1/10;
}
System.out.println(x+"的个位数:"+a[0]);
System.out.println(x+"的十位数:"+a[1]);
System.out.println(x+"的百位数:"+a[2]);
System.out.println(x+"的千位数:"+a[3]);
}
}

本回答被网友采纳
第2个回答  2018-01-23
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Count {
public static void main(String[] args) {
System.out.println("请输入要看百千位的数(0-65535)");

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String numberStr = null;

int numberInt = 0;
try {
numberStr = br.readLine(); //冲键盘读入数字

numberInt = Integer.parseInt(numberStr); //转换为数字
} catch (IOException e) {
e.printStackTrace();
} catch (NumberFormatException e) {
System.out.println("您输入的数据有误!");
}
System.out.println(numberStr.length());
PrintCHS(numberStr);

}

public static void PrintCHS(String number){
switch(number.length()){
case 1:System.out.println("个位是:"+number);break;
case 2:
System.out.println("十位是:" + number.substring(0, 1));
PrintCHS(number.substring(1));
break;
case 3:
System.out.println("百位是:" + number.substring(0, 1));
PrintCHS(number.substring(1));
break;
case 4:
System.out.println("千位是:" + number.substring(0, 1));
PrintCHS(number.substring(1));
break;
case 5:
System.out.println("万位是:" + number.substring(0, 1));
PrintCHS(number.substring(1));
break;
default:
System.out.println("输入有误!");
break;
}

}}
不知道这个能不能帮你