分五个部分 我对他们打包了 可以互相调用
主函数部分:
eightnum.java文件:
package com.ai;
import java.awt.*;
import java.util.ArrayList;
import java.util.Collections;
import java.applet.*;
import javax.swing.*;
public class EightNum {
int[][] current;
int[][] target;
private JTextField textField_18;
private JTextField textField_17;
private JTextField textField_16;
private JTextField textField_15;
private JTextField textField_14;
private JTextField textField_13;
private JTextField textField_12;
private JTextField textField_11;
private JTextField textField_10;
private JTextField textField_9;
private JTextField textField_8;
private JTextField textField_7;
private JTextField textField_6;
private JTextField textField_5;
private JTextField textField_4;
private JTextField textField_3;
private JTextField textField_2;
private JTextField textField;
private JFrame frame;
public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
EightNum window = new EightNum();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application
*/
public EightNum() {
current=new int[3][3];
target=new int[3][3];
createContents();
}
/**
* Initialize the contents of the frame
*/
private void createContents() {
frame = new JFrame();
frame.getContentPane().setLayout(new BorderLayout());
frame.setTitle("A* 解决八数码的实现");
frame.setBounds(100, 100, 597, 460);
final JPanel panel = new JPanel();
panel.setName("panel");
frame.getContentPane().add(panel);
JPanel panel_1;
panel_1 = new JPanel();
panel_1.setBorder(new TitledBorder(new LineBorder(Color.black, 1, false), "当前数组", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));
textField = new JTextField();
textField.setText("2");
textField_2 = new JTextField();
textField_2.setText("8");
textField_3 = new JTextField();
textField_3.setText("3");
textField_4 = new JTextField();
textField_4.setText("1");
textField_5 = new JTextField();
textField_5.setText("0");
textField_6 = new JTextField();
textField_6.setText("4");
textField_7 = new JTextField();
textField_7.setText("7");
textField_8 = new JTextField();
textField_8.setText("6");
textField_9 = new JTextField();
textField_9.setText("5");
JPanel panel_1_1;
panel_1_1 = new JPanel();
panel_1_1.setBorder(new TitledBorder(new LineBorder(Color.black, 1, false), "目标数组", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));
textField_10 = new JTextField();
textField_10.setText("1");
textField_11 = new JTextField();
textField_11.setText("2");
textField_12 = new JTextField();
textField_12.setText("3");
textField_13 = new JTextField();
textField_13.setText("8");
textField_14 = new JTextField();
textField_14.setText("0");
textField_15 = new JTextField();
textField_15.setText("4");
textField_16 = new JTextField();
textField_16.setText("7");
textField_17 = new JTextField();
textField_17.setText("6");
textField_18 = new JTextField();
textField_18.setText("5");
JButton button;
button = new JButton();
button.addActionListener(new ActionListener() {
pu