«

Java怎么实现数字逆序

时间:2024-7-24 11:46     作者:韩俊     分类: Java


这篇文章主要讲解了“Java怎么实现数字逆序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java怎么实现数字逆序”吧!

Java实现数字逆序

输入一个不多于5位的正整数,逆序后输出结果:

具体代码如下:

package com.jasmyn.demo;

/**
 * 给一个不多于5位的正整数,
 * 要求:①求出它是几位数;②分别打印出每一位数字;
 * ③按逆序打印出各位数字,例如原数为321,应输出123。 
 */

import java.util.*;

public class demo4 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("请输入一个不多于5位的正整数:");
        Scanner sc = new Scanner(System.in);
        String number=sc.next();
        System.out.println("输入的数是"+number.length()+"位数");
        for(int i=0;i<number.length();i++) {
            System.out.println("第"+(i+1)+"位数是:"+number.charAt(i));
        }
        System.out.print("逆序后的数为:");
        for(int i=number.length()-1;i>=0;i--) {
            System.out.print(number.charAt(i));
        }
    }

}
//数字转化字符串可以直接加双引号
//String str=number+"";

Java逆序输出问题

题目:任意给定一个正整数,将其形成一个逆序数据并输出

分析:本题有两种做法:

一、将整数的每一个数据提取出来存放到数组中输出,

二、用字符串转化成整数,逆序输出

第一种方法:需要两个类

第一个类:,定义数据属性,实现基本的方法

在写逆序输出的时候要注意以下几点:

1,若原来的整数最后面是0,则在逆序输出的时候第一个数字不能输0--------------如何解决?

当遇到0时则不输出

2,解决第一个问题的基础上,若整数的内部有0,例如302300,内部的也不会输出,-----------------如何解决?

记录每一个数字的下标,输出时,按照下标输出

第二个类:测试类

详细代码

package 逆序输出;
 
public class NX {
    private int n;
 
    public NX(int n) {
        this.n = n;
    }
 
    public NX() {}
 
    public int getN() {
        return n;
    }
 
    public void setN(int n) {
        this.n = n;
    }
    public void nixu()
    {
        int i=0;
        int[] a=new int[100];
        while(n!=0) {
            a[i]=n%10;
            i++;
            n=n/10;
        }
        int pos=0;
        for(int j=0;j<i;j++)
        {
            //System.out.println(a[0]);
            if(a[j]!=0) {
                pos=j;
                 break;
            }  
        }
        for(int j=pos;j<i;j++)
        {
         System.out.print(a[j]);
        }
    }
    
 
}
package 逆序输出;
 
public class Main_test {
    public static void main(String[] args) {
        NX nx=new NX(500400300);
        nx.nixu();
    }
 
}

第二种做法:

package 逆序输出;
 
public class NX1 {
    private String string;
 
    public NX1(String string) {
        this.string = string;
    }
 
    public NX1() {}
 
    public String getString() {
        return string;
    }
 
    public void setString(String string) {
        this.string = string;
    }
    public void nixu()
    {
        StringBuffer s=new StringBuffer(string);
        int b=Integer.parseInt(s.reverse().toString());//toString 一定不能省略
        System.out.println(b);
    }
    
    
 
}
package 逆序输出;
public class Main_test1 {
    public static void main(String[] args) {
        NX nx=new NX(12003400);
        nx.nixu();
    }
 
}

标签: java

热门推荐