在Java中输入一个整数,求他是几位数和每个位数是多少,如果是负数或者是0怎么办

如题所述

import java.util.Scanner;
public class NumberTest {
static Scanner sc=new Scanner(System.in);
public static void main(String[] args) {
while(true) {
System.out.println("输入一个数字:进行测试!");
init(Integer.parseInt(sc.nextLine().replaceAll("[^\\d-]", "")));
}
}
private static void init(int a) {
int n=0,tem=1;
String str="",src="";
if(a!=0) {
if(a<0) {
tem=a*-1;
src="负数";
}else {
tem=a;
src="正数";
}
for(int i=tem;i!=0;i/=10,n++) {
 str+=(i%10)+",";
}
}else {
src="为0,无意义!";
}
System.out.println(a+" 是["+src+"];是一个["+n+"]位数;数字排列:数字低位-->高位:"+str+"\r\n");
}
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-14
你留个邮箱 我把代码发给你 还有解题思路
相似回答