資源簡(jiǎn)介
人工智能這本書(shū)的最后給出了一個(gè)動(dòng)物識(shí)別系統(tǒng)的例子,是C版的,偶改為用java,希望對(duì)學(xué) java有點(diǎn)幫助.

代碼片段和文件信息
package?com.yao;
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
import?java.io.*;
import?java.util.Scanner;
/*該類(lèi)實(shí)現(xiàn)了用戶輸入接口并顯示用戶輸入并且將按照特定格式將用戶輸入存入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?“創(chuàng)建知識(shí)庫(kù)“);
dialog.setLayout(null);
resultField?=?new?JTextField();
resultField.setPreferredSize(new?Dimension(210?60));
resultField.setBounds(0?420?210?60);
JLabel?fieldLabel?=?new?JLabel(“請(qǐng)輸入結(jié)論“);
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(“請(qǐng)輸入條件“);
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(“結(jié)果顯示“);
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?“請(qǐng)輸入完整的條件與結(jié)論“?“信息提示“
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
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件????????382??2007-06-20?16:50??animal\.project
?????文件????????232??2007-06-05?14:36??animal\.classpath
?????文件??????11905??2007-09-23?21:02??animal\src\com\yao\Mainfr
?????文件???????1856??2007-07-05?22:00??animal\src\com\yao\NewFileChooser.java
?????文件???????1219??2007-06-05?22:40??animal\src\com\yao\GBC.java
?????文件????????374??2007-07-05?22:05??animal\src\com\yao\Rule.java
?????文件???????4023??2007-07-05?22:45??animal\src\com\yao\Thinker.java
?????文件???????1840??2007-09-23?21:02??animal\src\com\yao\ProduceRule.java
?????文件???????1602??2007-07-05?22:23??animal\src\com\yao\SearchAnimal.java
?????文件???????3591??2007-07-07?17:46??animal\src\com\yao\CreateKB.java
?????文件???????4045??2007-09-05?22:12??animal\bin\com\yao\Thinker.class
?????文件???????2400??2007-09-05?22:12??animal\bin\com\yao\SearchAnimal.class
?????文件????????618??2007-09-05?22:12??animal\bin\com\yao\Rule.class
?????文件???????2741??2007-09-23?21:02??animal\bin\com\yao\ProduceRule.class
?????文件???????1965??2007-09-05?22:12??animal\bin\com\yao\NewFileChooser$ExtensionFileFilter.class
?????文件????????997??2007-09-05?22:12??animal\bin\com\yao\NewFileChooser$FileIconView.class
?????文件???????1296??2007-09-05?22:12??animal\bin\com\yao\NewFileChooser.class
?????文件????????700??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????1584??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????2522??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????9373??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????1031??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件????????757??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????2802??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????1114??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????2610??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????1458??2007-09-23?21:02??animal\bin\com\yao\Mainfr
?????文件???????1493??2007-09-05?22:12??animal\bin\com\yao\GBC.class
?????文件???????2785??2007-09-05?22:12??animal\bin\com\yao\CreateKB$InputAction.class
?????文件???????2854??2007-09-05?22:12??animal\bin\com\yao\CreateKB.class
............此處省略27個(gè)文件信息
評(píng)論
共有 條評(píng)論