对于我随即智能输入的一串数字,要求打印出倒序的数字来。例如:
我输入了 34128,要求打印出 82143 。
提示:
必须用到人机对话的智能窗口,代码类似于:Double.parsedouble(javax.swing.JOptionPane.showDialog("输入数字"));
求一段带注释,不是很复杂的代码。如果是用一维数组做的,那就更好。

解决方案 »

  1.   

    string m = new string()
    m = "34128";
    char[] c = m.toCharArray();
    for(int i = c.lengh; i<c.lengh;i--)
    {
    c[i]="出来了"
    }
      

  2.   

    public static void main(String[] args) {
        String s;
        while (!(s = JOptionPane.showInputDialog("输入数字")).matches("\\d+"));
        char[] arr = s.toCharArray();
        for (int i = arr.length - 1; i >= 0; i--)
            System.out.print(arr[i]);
        System.out.println();
    }好吧,我认为……不需要什么注释吧
      

  3.   

    public class InverseString {
    public static void main(String[] args){
    String s = "34128";
    StringBuilder sBuilder = new StringBuilder(s);
    System.out.println(sBuilder.reverse());
    }
    }
      

  4.   


    public class InverseString {
    public static void main(String[] args){
    String s = "34128";
    StringBuilder sBuilder = new StringBuilder(s);
    System.out.println(sBuilder.reverse());
    }
    }
      

  5.   


    package csdn.javase.stringEx.ex1;
    /**
     * 
     * @author supercodingman
     * @version 2.0
     */
    public class InverseString {
    public static void main(String[] args){
    String s = "34128";
    StringBuilder sBuilder = new StringBuilder(s);
                    //第一种方法是自带的方法
    System.out.println(sBuilder.reverse());
                    //第二种是手写倒序
    InverseString.reverseString(s);
    }

    public static void reverseString(String s){
    StringBuilder sbuilder = new StringBuilder();
    char[] c = s.toCharArray();
    for(int i = c.length - 1; i >= 0; i --){
    sbuilder.append(c[i]);
    }
    System.out.println(sbuilder.toString());
    }
    }/**output:
    82143
    82143
    */
      

  6.   

    逆序 Collections.reverse
    乱序 Collections.shuffle
      

  7.   


    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class EasyRun extends JFrame implements ActionListener{
      private JPanel
        backPanel = new JPanel();
        
      private JTextField numInput=new JTextField(20),
         numOutput = new JTextField(20);
     
      private JButton 
        button = new JButton("反转");
        
      private JLabel
        labelIn = new JLabel("输入",JLabel.CENTER),
        labelOut = new JLabel("输出",JLabel.CENTER);//标签,文字居中  public EasyRun(){
        super("数字反转");
        backPanel.setLayout(new GridLayout(3,2));//布局方式,表格,3列2行    
        button.addActionListener(this);
        getContentPane().add(backPanel);
        backPanel.add(labelIn);
        backPanel.add(labelOut);
        backPanel.add(numInput);
        backPanel.add(numOutput);
        backPanel.add(button);
        getContentPane().add(backPanel);
        pack();
        Dimension d = getToolkit().getScreenSize(), w = getSize();
        setLocation((d.width - w.width) / 2,(d.height - w.height) / 2);
        addWindowListener(new WindowAdapter(){
          public void windowClosing(WindowEvent e){
            System.exit(0);
          }
        });
        setResizable(false);
        setVisible(true);
      }  public void actionPerformed(ActionEvent ae){
        Object source=ae.getSource();
        if(source==button){
         String s=numInput.getText();
         try{
           int num=Integer.valueOf(s);//判断是否为标准int型
           //利用stringbuffer的函数直接反转
           numOutput.setText(new StringBuffer(s).reverse()+"");
         }catch(NumberFormatException e){numOutput.setText("输入有误。");}
        }
      }
      
      public static void main(final String[] args){
        new EasyRun();
      }
    }//Zz&
      

  8.   


    System.out.println(new StringBuffer("34128").inverse().toString());
      

  9.   

    .toString()6楼、10楼,
    为什么要加这个东西??
      

  10.   


    正解。
    直接用API即可,何必自己搞算法。