java動態陣列Array實現單詞排序視窗版
阿新 • • 發佈:2021-01-10
雖然java實驗考試已經結束,不是很滿意,GUI學的不好,尤其是各個元件的佈局和新增到容器,事件處理,然而還有個很重要的原因,由於意外情況,她明天要補考!不想她掛科!!!懂的都懂…
回到正題,這段程式碼的功能很簡單,把單詞排序與GUI結合起來,達到對使用者更友好的目的!
程式碼如下:
//單詞排序視窗版
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Arrays;
public class wordsort {
public static void main(String[] args) {
// TODO Auto-generated method stub
Frame f=new Frame("單詞排序(輸入以’,‘分割的單詞)"); //建立一個窗體物件
Panel p=new Panel();//建立一個畫板
p.add(new Label("排序前:")); //部件label
TextField tf1=new TextField(30); //部件textfild
p.add(new Label("排序後:"));
TextField tf2=new TextField(30);
p.add(tf1);
p.add(tf2); //這個畫板共加上了四個基本的部件
p.setLayout(new GridLayout(2,2)); //設定畫板的佈局格式為2*2的網格形佈局
f.add(p,BorderLayout.CENTER); //設定畫板在視窗中的佈局格式為中心佈局
Button btn=new Button("排序");
f.add(btn,BorderLayout.NORTH); //給視窗新增部件 按鈕,佈局方式在視窗的北部,即上方
f.setVisible(true);
f.pack(); //調整此視窗的大小,以適合其子元件的首選大小和佈局。
btn.addActionListener(new ActionListener() { //重點!給按鈕新增事件
@Override
public void actionPerformed(ActionEvent arg0) { //只要點選按鈕就會執行該方法裡的程式碼
// TODO Auto-generated method stub
String str=tf1.getText(); //gettext方法,獲取tf1文字框裡的輸入,然後賦值給str變數
String[] words=str.split(","); //往文字框裡輸入單詞的時候,我是以是以空格為分隔符的
Arrays.sort(words); //字典排序
String result="";
System.out.println("排序後為:");
for (int i = 0; i < words.length; i++) {
System.out.println(words[i]);
result=result+words[i]+" ";
}
tf2.setText(result); //在tf2文字框裡顯示結果
}
});
f.addWindowListener(new WindowAdapter() { //事件關閉處理事件
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
});
}
}
結果如下: