資源簡介
自己上人工智能的時候花了很長時間寫的動物產生式系統 ,非常完美,用java寫的,還有非常漂亮的圖形用戶界面,采用純粹的面向對象的思想,易于看懂,希望對大家有幫助

代碼片段和文件信息
package?com.yao;
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
import?java.io.*;
import?java.util.Scanner;
/*該類實現了用戶輸入接口并顯示用戶輸入并且將按照特定格式將用戶輸入存入Rule.txt文件中*/
public?class?CreateKB?{
private?static?final?int?WIDTH?=?500;
private?static?final?int?HEIGHT?=?600;
private?JDialog?dialog;
private?JPanel?inPanel?showPanel?buttonPanel?panel;
private?JTextField?resultField;
private?JTextArea?causeArea?showArea;
private?JButton?certain?exit;
public?CreateKB(Jframe?owner)?{
dialog?=?new?JDialog(owner?“創建知識庫“);
dialog.setLayout(null);
resultField?=?new?JTextField();
resultField.setPreferredSize(new?Dimension(210?60));
resultField.setBounds(0?420?210?60);
JLabel?fieldLabel?=?new?JLabel(“請輸入結論“);
fieldLabel.setLabelFor(resultField);
fieldLabel.setBounds(0?360?210?60);
causeArea?=?new?JTextArea();
causeArea.setPreferredSize(new?Dimension(210?300));
causeArea.setLineWrap(true);
causeArea.setBounds(0?60?210?300);
JLabel?areaLabel?=?new?JLabel(“請輸入條件“);
areaLabel.setLabelFor(causeArea);
areaLabel.setBounds(0?0?210?60);
showArea?=?new?JTextArea();
showArea.setEditable(false);
showArea.setLineWrap(true);
showArea.setPreferredSize(new?Dimension(210?420));
showArea.setBounds(290?60?210?420);
JLabel?showAreaLabel?=?new?JLabel(“結果顯示“);
showAreaLabel.setLabelFor(showArea);
showAreaLabel.setBounds(290?0?210?60);
certain?=?new?JButton(new?InputAction());
certain.setBounds(210?210?80?60);
exit?=?new?JButton(new?ExitAction());
exit.setBounds(210?510?80?60);
dialog.add(resultField);
dialog.add(fieldLabel);
dialog.add(causeArea);
dialog.add(areaLabel);
dialog.add(showArea);
dialog.add(showAreaLabel);
dialog.add(certain);
dialog.add(exit);
dialog.setSize(WIDTH?HEIGHT);
dialog.setVisible(true);
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
}
private?class?InputAction?extends?AbstractAction?{
ImageIcon?icon;
public?InputAction()?{
icon?=?new?ImageIcon(“.\\image\\input.gif“);
if?(icon.getIconWidth()?80)
icon?=?new?ImageIcon(icon.getImage().getScaledInstance(20?-1
Image.SCALE_DEFAULT));
putValue(Action.SMALL_ICON?icon);
}
public?void?actionPerformed(ActionEvent?e)?{
String?str?=?causeArea.getText();
String?s?=?resultField.getText();
if?(s.length()==0||str.length()==0)?{
JOptionPane.showConfirmDialog(null?“請輸入完整的條件與結論“?“信息提示“
JOptionPane.INFORMATION_MESSAGE);
}
else{
showArea.setText(““?+?“IF“?+?“?“?+?str?+?“\n“?+?“THEN“?+?“?“?+?s);
Scanner?scanner=new?Scanner(str);
String?tempString=new?String();
while(scanner.hasNextLine()){
tempString?+=scanner.nextLine();
if(scanner.hasNextLine())
tempString?+=“?“+“AND“+“?“;
}
String?string=new?String();
string=“IF“?+?“?“?+?tempString?+“?“+?“THEN“?+?“?“?+?s;
File?file=new
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????232??2007-06-05?14:36??animal\.classpath
?????文件????????382??2007-06-20?16:50??animal\.project
?????文件????????831??2010-01-12?20:19??animal\bin\com\yao\CreateKB$ExitAction.class
?????文件???????2785??2010-01-12?20:19??animal\bin\com\yao\CreateKB$InputAction.class
?????文件???????2854??2010-01-12?20:19??animal\bin\com\yao\CreateKB.class
?????文件???????1493??2010-01-12?20:19??animal\bin\com\yao\GBC.class
?????文件???????2802??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件????????700??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????1031??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????2610??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件????????757??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????2522??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????1114??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????1584??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????1458??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????9374??2010-01-12?20:58??animal\bin\com\yao\Mainfr
?????文件???????1965??2010-01-12?20:19??animal\bin\com\yao\NewFileChooser$ExtensionFileFilter.class
?????文件????????997??2010-01-12?20:19??animal\bin\com\yao\NewFileChooser$FileIconView.class
?????文件???????1296??2010-01-12?20:19??animal\bin\com\yao\NewFileChooser.class
?????文件???????2741??2010-01-12?20:19??animal\bin\com\yao\ProduceRule.class
?????文件????????618??2010-01-12?20:19??animal\bin\com\yao\Rule.class
?????文件???????2400??2010-01-12?20:19??animal\bin\com\yao\SearchAnimal.class
?????文件???????4027??2010-01-12?20:19??animal\bin\com\yao\Thinker.class
?????文件??????11031??2000-04-17?18:14??animal\image\bat.gif
?????文件????????845??2000-05-22?21:52??animal\image\input.gif
?????文件???????2126??2007-07-05?19:45??animal\image\save.gif
?????文件??????10850??2007-06-13?22:17??animal\image\企鵝.gif
?????文件???????2236??2007-07-05?19:45??animal\image\保存.gif
?????文件???????1601??2007-06-13?21:24??animal\image\信天翁.gif
?????文件???????1931??2007-07-05?19:46??animal\image\創建知識庫.gif
............此處省略27個文件信息
評論
共有 條評論