eclipse软件
win7系统
1.打开IDE:所谓IED就是java的开发环境,小编采用的是eclipse软件。
2.建立java工程:建立一个java工程,其具体的目录结构和初始的代码如下图所示。
1.类的结构:由于该排序采用的是java中集成的的方法,所以,该部分代码相对简单一些,主要由四个方法组成,构造方法、数据获取方法、事件处理方法,main方法。例中的属性主要设计到,窗口的的模块,如图所示。
2.构造方法:该方法主要用来对桌面控件进行相关的配置,设计出自己需要的窗口界面,大小等。具体代码如下:public MySort() { jp.setLayout(null); jl.setBounds(30, 10, 340, 36); jp.add(jl); jl2.setBounds(30, 130, 100, 30); jp.add(jl2); jsp_in.setBounds(30, 45, 340, 70); jp.add(jsp_in); jta_in.setLineWrap(true); jsp_out.setBounds(30, 165, 340, 70); jp.add(jsp_out); jta_out.setLineWrap(true); jb_act.setBounds(200, 125, 70, 30); jp.add(jb_act); jb_cle.setBounds(300, 125, 70, 30); jp.add(jb_cle); jb_act.addActionListener(this); jb_cle.addActionListener(this); this.add(jp); this.setTitle('sort法排序'); this.setBounds(100, 100, 400, 300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setResizable(false); }
3.数据获取:由于窗口文本框中的数据是字符串且有可能无法使用,所以需要一个方法专门对此数据进行处理成,我们先要的数组,且含有排序方法的 实现具体代码如下:public void getArraySort() { String arrayStr = jta_in.getText().trim(); if (arrayStr.equals('')) { JOptionPane.showMessageDialog(null, '请输入数字内容'); return; } for (int i = 0; i < arrayStr.length(); i++) { char charAt = arrayStr.charAt(i); if (!Character.isDigit(charAt) && (charAt != ' ') && (charAt != '.')) { JOptionPane.showMessageDialog(null, '输入包含非数字内容'); jta_in.setText(''); return; } } String[] numStrs = arrayStr.split(' {1,}'); double[] numArray = new double[numStrs.length]; for (int i = 0; i < numArray.length; i++) { String[] temp = numStrs[i].split('.{1,}'); char[] tempstrs = numStrs[i].toCharArray(); if ((tempstrs[0] == '.') || (tempstrs[tempstrs.length - 1] == '.') || (temp.length >= 3)) { JOptionPane.showMessageDialog(null, '输入包含非数字内容'); jta_in.setText(''); return; } numArray[i] = Double.valueOf(numStrs[i]); } array = numArray; jta_out.setText('输入的的原始数据是:\n'); for(String string:numStrs){ jta_out.append(string+' '); } jta_out.append('\n'); Arrays.sort(array); jta_out.append('排序后的数据是:\n'); for(double value:array){ jta_out.append(value+' '); } }
4.事件处理方法:窗口中有两个按钮,该方法主要涉及到对实现按钮按下后所触发的事件,具体代码如下,: public void actionPerformed(ActionEvent e) { if (e.getSource() == jb_act) { getArraySort(); } if(e.getSource()==jb_cle){ jta_in.setText(''); jta_out.setText(''); } }
5.main方法:main方法使用里执行我们编写的类的,类需要实例化成一个对象以后才能执行,本方法中就实例化了一个类,具体操作代码如下:
1.编译执行:单击“编译并运行”按钮,就可以看到我们做编写的界面效果了,如果大家觉得该效果不好的话也可以对构造方法进行改动。
2.验证效果:接着我们根据提示往文本框中输入相关的数据,按下“排序”按钮就可以看到我们的效果了。
如有疑问可以留言
分享可以使我们懂得更多