1. java 编写一个计算一个整数的位数的递归方法。在方法声明中不要使用任何局部变量,参数不在此列。
package a;
import java.util.*;
public class shuru
{
public static int a=0;
public shuru() {}
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
int i=in.nextInt();
a=digui(i);
System.out.println("整数的位数是:"+a);
}
public static int digui(int j)
{
if(j<10) {}
else {a++;
digui(j/10);
}
return a+1;
}
}
2. 在Java中输入一个整数,求他是几位数和每个位数是多少,如果是负数或者是0怎么办
importjava.util.Scanner;
publicclassNumberTest{
staticScannersc=newScanner(System.in);
publicstaticvoidmain(String[]args){
while(true){
System.out.println("输入一个数字:进行测试!");
init(Integer.parseInt(sc.nextLine().replaceAll("[^\d-]","")));
}
}
privatestaticvoidinit(inta){
intn=0,tem=1;
Stringstr="",src="";
if(a!=0){
if(a<0){
tem=a*-1;
src="负数";
}else{
tem=a;
src="正数";
}
for(inti=tem;i!=0;i/=10,n++){
str+=(i%10)+",";
}
}else{
src="为0,无意义!";
}
System.out.println(a+"是["+src+"];是一个["+n+"]位数;数字排列:数字低位-->高位:"+str+" ");
}
}
3. java中求一个整数个十百千位的方法
主要的思想是先将这个整数对10求余,得到个位数,再将整数除以10得到个位数以外的其余数(除以10之后因为数为int类型所以原先的个位数作为小数被舍去),然后重复操作得到其余位数
示例代码如下(因为要求个十百千位,所以没有写求更高位数的代码):
以下是文字版的代码:
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]);
}
}
4. java怎么取得一个数字的整数位
publicstaticvoidmain(Stringargs[])
{
doublea=10.25;
System.out.println(getIntValue(a));
}
//返回小数的整数部分
publicstaticintgetIntValue(Objectobject){
if(objectinstanceofNumber){
Numbernumber=(Number)object;
returnnumber.intValue();
}else{
return-1;
}
}
5. java求整数的位数用switch
命令行输入,这样写一下Scannersc=newScanner(System。in);longm=sc。nextLong();包:java。util。Scanner简单地importjava。util。
6. 在java输入一个整数,输出此数为几位数
packagecn.test;
importjava.util.Scanner;
publicclassTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
System.out.println("请输入一个整数");
//忽略数据校验和负数,负数请使用绝对值
inti=sc.nextInt();
//计数器,因为不考虑负数且while条件控制在i>=10,那么无法进入循环的默认是1位数
intj=1;
//如果比10大,进入循环
while(i>=10){
//i除以10,自动忽略余数,再将结果赋值给i。即:将i的末位数抹去。
i=i/10;
//计数器自增
j++;
}
System.out.println("这是个"+j+"位数");
}
}
7. Java:输入一个整数,输出它的位数以及各位数之和。
楼上说没错,while(X)是先进行X判断然后再执行{语句体},而do..while则是先执行do{语句体},再判断while(X),这样会导致do..while比while执行语句体的次数多一次
8. 用Java如何求出一个整数的各位数字之和
用Java求出一个整数的各位数字之和:先算出这个整数的位数,再取到一个整数的个位十位百位等等等,然后求和。如下:
public static int sumDig(int n)
int sum=0
if(n>=10)
sum+=n%10
sum+=sumDig(n/10)
else sum+=n
return sum
Java语言特点
Java不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
9. java中,整形数字占几位字符
java语言中 int类型数据占4个字节 也就是32位