java逆序輸出輸入的數字
阿新 • • 發佈:2018-11-11
問題描述:
給一個不多於5位的正整數,要求:一、求它是幾位數,二、逆序打印出各位數字。
問題分析:
1.判斷是否是五位數且輸入為正整數
2.需要逆序輸出
問題解決:
需要用到For 迴圈迴圈遍歷。需要將輸入的數存入陣列,將陣列的元素,逆序輸出為字元。
注意:由於number為int型別,輸入為其它型別將會報錯,此實驗在這不做判斷。
使用if(number>99999||number<0)來確定輸入的數字為正整數。且int型別下00001=1.因此不用判斷數字前輸入0是否正確。例如以下執行結果:
請輸入一個不多於5位的正整數
000000004
這是一個1位數
4
import java.util.Scanner; public class Demo { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("請輸入一個不多於5位的正整數"); int number=sc.nextInt(); if(number>99999||number<0) { System.out.println("請輸入正確的格式"); } else { String str=""+number;//將輸入的int型轉化為String型別 char []num=str.toCharArray();//使用toCharArray方法將String型別轉化為陣列。 int long1=str.length();//獲取陣列長度得到數字為幾位數 String num1="";//定義一個空字串 for(int i=long1-1;i>=0;i--) { num1=num1+num[i];//使用空字串將陣列進行拼接為字元 } System.out.println("這是一個"+long1+"位數"); System.out.println(num1); } } }