.setVerticalGroup(jPanel1Layout .createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup( jPanel1Layout .createSequentialGroup() .addContainerGap() .addComponent(inputLabel) .addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(inputField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE)
.addGap(22, 22, 22) .addComponent(upButton) .addGap(18, 18, 18) .addComponent(downButton) .addGap(18, 18, 18)
.addComponent(outputLabel) .addGap(10, 10, 10)
.addComponent(outputField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
GroupLayout.PREFERRED_SIZE)
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED,
18, Short.MAX_VALUE) .addComponent(exitButton)
.addGap(25, 25, 25)));
GroupLayout layout = new GroupLayout(getContentPane()); getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout.createParallelGroup( GroupLayout.Alignment.LEADING).addGroup( GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap()
.addComponent(jPanel, GroupLayout.DEFAULT_SIZE,
GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap()));
layout.setVerticalGroup(layout.createParallelGroup(
GroupLayout.Alignment.LEADING).addGroup(
6
号 号
}
layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel, GroupLayout.DEFAULT_SIZE,
GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap()));
pack();
// 数据升序排序
public String Ascendsort() { }
// 数据降序排序
public String Descendsort() {
Sort sort = new Sort();
String str = inputField.getText();
Pattern pa = Pattern.compile(\);// 增Matcher ma = pa.matcher(str);
String first = ma.replaceAll(\); // 把英文标点符号替换成空,即去掉英文标点符first = first.replaceAll(\, \); // 去掉输入时多余的空格 Sort sort = new Sort();
String str = inputField.getText();
Pattern pa = Pattern.compile(\);// 增Matcher ma = pa.matcher(str);
String first = ma.replaceAll(\); // 把英文标点符号替换成空,即去掉英文标点符first = first.replaceAll(\, \); // 去掉输入时多余的空格 String[] newstr = first.split(\); int m = newstr.length;
int[] numbers = new int[m + 1]; int[] ascendSort;
String ascendNumbers = \; for (int i = 0; i < m; i++) { }
ascendSort = sort.AscendSort(numbers);
for (int j = 1; j < (ascendSort.length - 1); j++) { }
return ascendNumbers + ascendSort[ascendSort.length - 1];
ascendNumbers = ascendNumbers + ascendSort[j] + \; numbers[i] = Integer.parseInt(newstr[i]);
加对应的标点
加对应的标点
7
}
}
String[] newstr = first.split(\); int m = newstr.length;
int[] numbers = new int[m + 1]; int[] descendSort;
String descendNumbers = \; for (int i = 0; i < m; i++) { }
descendSort = sort.DescendSort(numbers);
for (int k = 0; k < (descendSort.length - 2); k++) { }
return descendNumbers + descendSort[descendSort.length - 2];
descendNumbers = descendNumbers + descendSort[k] + \; numbers[i] = Integer.parseInt(newstr[i]);
package edu.ynu.lab12;
public class Sort {
public int[] AscendSort(int array[]) //升序排序 for (int pass = 1; pass < array.length; pass++) {
for (int element = 0;element < (array.length - 1); element++) {
if (array[element] > array[element + 1]) { swap(array,element,element + 1); }
{
}
}
return array;
public int[] DescendSort(int array[]) //降序排序 for (int pass = 1; pass < array.length; pass++) {
for (int element = 0;element < (array.length - 1); element++) {
if (array[element] < array[element + 1]) { swap(array,element,element + 1); }
}
{
}
8
}
return array;
}
public void swap(int array[], int first, int second) //元素移位 {
int hold; hold = array[first];
array[first] = array[second]; array[second] = hold; } }
运行截图:
图1 将用户输入的标点符号和多余的空格转换为一个空格(此为自己所加功能,老师未要求,参考时
请去除)
9
图2 升序排列
图3 降序排列
10