Java實現:將一個數逆序輸出
阿新 • • 發佈:2019-01-07
轉載請標註地址:https://blog.csdn.net/A_BlackMoon/article/details/80064092
這樣的一道題的話,拿到題目後我是這樣想的。
一、這個數是否是字串,字串的話可以有多種方式進行;
1、利用String類的toCharArray(),再倒序輸出陣列的方法
import javax.swing.JOptionPane; public class ReverseString { public static void main (String args[]){ String originalString; String resultString = ""; originalString = JOptionPane.showInputDialog("Please input a String: "); char[] charArray = originalString.toCharArray(); for (int i=charArray.length-1; i>=0; i--){ resultString += charArray[i]; } JOptionPane.showMessageDialog(null, resultString, "Reverse String", JOptionPane.INFORMATION_MESSAGE); } }
2、利用String類提供的subString()方法,利用遞迴的辦法輸出倒序字串import javax.swing.JOptionPane; public class ReverseString { public static void main (String args[]){ String originalString; String resultString = ""; originalString = JOptionPane.showInputDialog("Please input a String: "); char[] charArray = originalString.toCharArray(); for (int i=charArray.length-1; i>=0; i--){ resultString += charArray[i]; } JOptionPane.showMessageDialog(null, resultString, "Reverse String", JOptionPane.INFORMATION_MESSAGE); } }
import javax.swing.JOptionPane; public class ReverseString { public static void reverseString (String str){ if (str.length() == 1){ System.out.print(str); } else{ String subString1 = str.substring(0, str.length()-1); String subString2 = str.substring(str.length()-1); System.out.print(subString2); reverseString (subString1); } } public static void main (String args[]){ String originalString; originalString = JOptionPane.showInputDialog("Please input a String: "); reverseString (originalString); } }
import javax.swing.JOptionPane;
public class ReverseString {
public static void reverseString (String str){
if (str.length() == 1){
System.out.print(str);
}
else{
String subString1 = str.substring(0, str.length()-1);
String subString2 = str.substring(str.length()-1);
System.out.print(subString2);
reverseString (subString1);
}
}
public static void main (String args[]){
String originalString;
originalString = JOptionPane.showInputDialog("Please input a String: ");
reverseString (originalString);
}
}
3、不把字串定義為String類,而是定義成一個StringBuffer類,用StringBuffer類中的reverse()方法直接倒序字串。import javax.swing.JOptionPane;
public class ReverseString {
public static void reverseString (String str){
StringBuffer stringBuffer = new StringBuffer (str);
System.out.print(stringBuffer.reverse());
}
public static void main (String args[]){
String originalString;
originalString = JOptionPane.showInputDialog("Please input a String: ");
reverseString (originalString);
}
}
二、數字型別的進行數字的倒序輸出
import java.util.Scanner;//要使用scanner這個類,就需要匯入一個輸入介面相關的包
public class HelloWorld {
public static void main(String[] args)
{
//System.out.println("Hello java");
Scanner s = new Scanner(System.in); //建立一個物件用來輸入
System.out.println("請輸入一個數字");
int n = s.nextInt();//讀取資料
int t = n ;
int save_number = 0 ;
while(n != 0)
{
save_number = save_number * 10 + n % 10 ;
n /= 10 ;
}
System.out.println("save:"+save_number);//輸出
}
}
其實,這一塊應用遞迴也挺好的。當然方法也有其他的,程式設計便是這樣同一種需求有多種實現方式,關鍵看在實際的業務中如何去使用。現在是倒序輸出,如果是排序直接上個雙層for迴圈也OK。