欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實現(xiàn)雙人五子棋游戲

 更新時間:2022年05月06日 15:23:27   作者:寒夜清風  
這篇文章主要為大家詳細介紹了java實現(xiàn)雙人五子棋游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java實現(xiàn)雙人五子棋游戲的具體代碼,供大家參考,具體內容如下

通過 上下左右 控制棋盤走動  空格落子   (深度優(yōu)先搜索)

package day_1;?
?
import java.awt.*;
import javax.swing.*;
?
import java.awt.event.*;
?
public class CircleRun extends JFrame {
?? ?/**
?? ? *?
?? ? */
?? ?MyPanel mp = null;
?
?? ?public static void main(String[] args) {
?? ??? ?CircleRun cr = new CircleRun();
?? ?}
?
?? ?public CircleRun() {
?
?? ??? ?mp = new MyPanel();
?? ??? ?this.add(mp);
?? ??? ?this.addKeyListener(mp);
?? ??? ?this.setTitle("雙人五子棋正式版3.0");
?? ??? ?this.setSize(518, 538);// 設置窗體大小
?? ??? ?this.setLocation(340, 50);// 設置出現(xiàn)的位置
?? ??? ?this.setVisible(true);// 設置為可見
?? ??? ?this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
?? ??? ?JOptionPane.showMessageDialog(this, "雙人五子棋游戲說明:通過←↑→↓控制旗子走向,空格下子先滿五個子勝利", "游戲說明", JOptionPane.WARNING_MESSAGE);
?? ?}// 游戲說明
}
?
class Text2Frame {// 設置一個交互框
?? ?JTextField jt1 = new JTextField(); // new一個文本框
?? ?JTextArea jt2 = new JTextArea(); // new一個文本區(qū)
?
?? ?JTextArea jt4 = new JTextArea(); // new一個文本區(qū)
?
?? ?Text2Frame() {
?
?? ??? ?JScrollPane jsp = new JScrollPane(jt2); // new一個滾條
?? ??? ?String title = "正在思考。。。。";
?? ??? ?JFrame jf = new JFrame(title);
?? ??? ?Container container = jf.getContentPane();
?? ??? ?// container.setBackground(Color.yellow); //容器的背景色
?? ??? ?jf.setVisible(true); // 窗體可見
?? ??? ?jf.setLocation(150, 50);
?? ??? ?jf.setSize(300, 150); // 窗體大小
?? ??? ?jf.setLayout(new BorderLayout()); // 邊界布局
?? ??? ?jf.add(BorderLayout.NORTH, jt1); // 文本框邊界頂部放置
?? ??? ?jt1.setBackground(Color.yellow);
?? ??? ?jf.add(BorderLayout.CENTER, jt2); // 文本框邊界中間放置
?? ??? ?jf.add(BorderLayout.EAST, jt4); // 文本框邊界中間放置
?? ??? ?jt2.setBackground(Color.red);
?
?? ??? ?jt2.setFont(new Font("宋體", Font.PLAIN, 30));
?
?? ?}
?
?? ?void add(String a) {
?? ??? ?jt2.setText(a);
?
?? ?}
?
};
?
class Text3Frame {
?? ?JTextField jt1 = new JTextField(); // new一個文本框
?? ?JTextArea jt2 = new JTextArea(); // new一個文本區(qū)
?
?? ?JTextArea jt4 = new JTextArea(); // new一個文本區(qū)
?
?? ?Text3Frame() {
?
?? ??? ?JScrollPane jsp = new JScrollPane(jt2); // new一個滾條
?? ??? ?String title = "當前坐標";
?? ??? ?JFrame jf = new JFrame(title);
?? ??? ?Container container = jf.getContentPane();
?? ??? ?// container.setBackground(Color.yellow); //容器的背景色
?? ??? ?jf.setVisible(true); // 窗體可見
?? ??? ?jf.setLocation(140, 180);
?? ??? ?jf.setSize(300, 200); // 窗體大小
?? ??? ?jf.setLayout(new BorderLayout()); // 邊界布局
?? ??? ?jf.add(BorderLayout.NORTH, jt1); // 文本框邊界頂部放置
?? ??? ?jt1.setBackground(Color.yellow);
?? ??? ?jf.add(BorderLayout.CENTER, jt2); // 文本框邊界中間放置
?? ??? ?jf.add(BorderLayout.EAST, jt4); // 文本框邊界中間放置
?? ??? ?jt2.setBackground(Color.green);
?
?? ??? ?jt2.setFont(new Font("宋體", Font.PLAIN, 30));
?
?? ?}
?
?? ?void add(String a) {
?? ??? ?jt2.setText(a);
?
?? ?}
?
?? ?String shu(int a, int b) {
?? ??? ?return "當前坐標(" + a + "," + b + ")";
?? ?}
?
};
?
// 定義自己的面板
class MyPanel extends JPanel implements KeyListener {
?? ?/**
?? ? *?
?? ? */
?? ?private static final long serialVersionUID = 4154597541232213984L;
?? ?Text2Frame txw = new Text2Frame();
?? ?Text3Frame txw3 = new Text3Frame();
?? ?static JFrame sc = new JFrame();
?? ?static int jishu = 1;
?
?? ?static int summm = 1;
?? ?static int summm2 = 1;
?? ?static int arr[][] = new int[11][12];
?
?? ?int x = 5;
?? ?int y = 5;
?? ?int sum = 0;
?? ?int sum2 = 0;
?? ?Node n1 = new Node(x, y);
?? ?seqlist kai = new seqlist(n1);
?? ?seqlist seq = new seqlist(null);
?? ?seqlist seq2 = new seqlist(null);
?
?? ?static void soushang(int a, int b) {
?
?? ??? ?if (a - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b] == 1 && a - 1 > 0) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?
?? ??? ??? ?}
?
?? ??? ??? ?soushang(a - 1, b);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souxia(int a, int b) {
?
?? ??? ?if (a + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b] == 1 && a + 1 <= 10) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souxia(a + 1, b);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souzuo(int a, int b) {
?
?? ??? ?if (b - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a][b - 1] == 1 && b - 1 >= 1) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souzuo(a, b - 1);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souyou(int a, int b) {
?
?? ??? ?if (b + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a][b + 1] == 1 && b + 1 <= 10) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyou(a, b + 1);
?
?? ??? ?}
?? ?}
?
?? ?static void soushangzuo(int a, int b) {
?
?? ??? ?if (a - 1 < 1 || b - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b - 1] == 1 && (a - 1 > 0) && (b - 1) > 0) {
?
?? ??? ??? ?summm++;
?
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?soushangzuo(a - 1, b - 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souxiazuo(int a, int b) {
?
?? ??? ?if (a + 1 > 10 || b - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b - 1] == 1 && (a + 1 <= 10) && (b - 1) >= 1) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souxiazuo(a + 1, b - 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souyoushang(int a, int b) {
?
?? ??? ?if (a - 1 < 1 && b + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b + 1] == 1 && a - 1 >= 1 && b + 1 <= 10) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyoushang(a - 1, b + 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souyouxia(int a, int b) {
?
?? ??? ?if (b + 1 > 10 && a + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b + 1] == 1 && b + 1 <= 10 && a + 1 <= 10) {
?
?? ??? ??? ?summm++;
?? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "紅色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyouxia(a + 1, b + 1);
?? ??? ?}
?? ?}
?
?? ?static void soushang2(int a, int b) {
?
?? ??? ?if (a - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b] == 2 && a - 1 > 0) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?soushang2(a - 1, b);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souxia2(int a, int b) {
?
?? ??? ?if (a + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b] == 2 && a + 1 <= 10) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souxia2(a + 1, b);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souzuo2(int a, int b) {
?
?? ??? ?if (b - 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a][b - 1] == 2 && b - 1 >= 1) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souzuo2(a, b - 1);
?
?? ??? ?}
?
?? ?}
?
?? ?static void souyou2(int a, int b) {
?
?? ??? ?if (b + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a][b + 1] == 2 && b + 1 <= 10) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyou2(a, b + 1);
?
?? ??? ?}
?
?? ?}
?
?? ?static void soushangzuo2(int a, int b) {
?
?? ??? ?if (a - 1 < 1 || b - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b - 1] == 2 && (a - 1 >= 1) && (b - 1) >= 1) {
?
?? ??? ??? ?summm2++;
?
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?soushangzuo2(a - 1, b - 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souxiazuo2(int a, int b) {
?
?? ??? ?if (a + 1 > 10 || b - 1 < 1) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b - 1] == 2 && (a + 1 <= 10) && (b - 1) >= 1) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souxiazuo2(a + 1, b - 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souyoushang2(int a, int b) {
?
?? ??? ?if (a - 1 < 1 && b + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a - 1][b + 1] == 2 && a - 1 >= 1 && b + 1 <= 10) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyoushang2(a - 1, b + 1);
?? ??? ?}
?
?? ?}
?
?? ?static void souyouxia2(int a, int b) {
?
?? ??? ?if (b + 1 > 10 && a + 1 > 10) {
?
?? ??? ??? ?return;
?
?? ??? ?}
?? ??? ?if (arr[a + 1][b + 1] == 2 && b + 1 <= 10 && a + 1 <= 10) {
?
?? ??? ??? ?summm2++;
?? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ?for (int i = 0; i < 11; i++) {
?? ??? ??? ??? ??? ?for (int k = 0; k < 12; k++) {
?? ??? ??? ??? ??? ??? ?arr[i][k] = 0;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println("勝利");
?? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "綠色方勝利,點擊確定重新開始", "結果", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ?}
?
?? ??? ??? ?souyouxia2(a + 1, b + 1);
?? ??? ?}
?? ?}
?
?? ?public void paint(Graphics g) {
?? ??? ?if (jishu % 2 == 1) {
?? ??? ??? ?String aaa = "紅方開始下棋";
?? ??? ??? ?txw.add(aaa);
?
?? ??? ?} else {
?? ??? ??? ?String aaa = "綠方開始下棋";
?? ??? ??? ?txw.add(aaa);
?
?? ??? ?}
?
?? ??? ?txw3.add(txw3.shu(x, y));
?? ??? ?super.paint(g);
?? ??? ?for (int i = 1; i <= 10; i++) {
?? ??? ??? ?for (int k = 1; k <= 10; k++) {
?? ??? ??? ??? ?g.fillOval((i - 1) * 50, (k - 1) * 50, 50, 50);
?? ??? ??? ?}
?? ??? ?}
?? ??? ?Color c = g.getColor();
?
?? ??? ?g.fillOval(x * 50, y * 50, 50, 50);
?? ??? ?Node now = seq.head;
?? ??? ?Node tou = kai.head;
?? ??? ?Color u = g.getColor();
?? ??? ?if (jishu % 2 == 1) {
?? ??? ??? ?g.setColor(Color.red);
?? ??? ??? ?g.fillOval((tou.a - 1) * 50, (tou.b - 1) * 50, 50, 50);
?? ??? ??? ?g.setColor(u);
?? ??? ?} else {
?? ??? ??? ?g.setColor(Color.green);
?? ??? ??? ?g.fillOval((tou.a - 1) * 50, (tou.b - 1) * 50, 50, 50);
?? ??? ??? ?g.setColor(u);
?
?? ??? ?}
?
?? ??? ?while (now != null) {
?? ??? ??? ?System.out.print("(" + now.a + " " + now.b + ")");
?? ??? ??? ?Color r = g.getColor();
?? ??? ??? ?g.setColor(Color.red);
?? ??? ??? ?g.fillOval((now.a - 1) * 50, (now.b - 1) * 50, 50, 50);
?? ??? ??? ?g.setColor(r);
?? ??? ??? ?now = now.next;
?
?? ??? ?}
?? ??? ?Node now2 = seq2.head;
?? ??? ?while (now2 != null) {
?? ??? ??? ?System.out.print("(" + now2.a + " " + now2.b + ")");
?? ??? ??? ?Color r = g.getColor();
?? ??? ??? ?g.setColor(Color.green);
?? ??? ??? ?g.fillOval((now2.a - 1) * 50, (now2.b - 1) * 50, 50, 50);
?? ??? ??? ?g.setColor(r);
?? ??? ??? ?now2 = now2.next;
?
?? ??? ?}
?? ??? ?System.out.println();
?? ?}
?
?? ?// 鍵的一個值被輸出
?? ?@Override
?? ?public void keyTyped(KeyEvent e) {
?
?? ?}
?
?? ?// 鍵被按下
?? ?@Override
?
?? ?public void keyPressed(KeyEvent e) {
?
?? ??? ?System.out.print("線性表為");
?
?? ??? ?System.out.println();
?? ??? ?// System.out.println("鍵被按下"+e.getKeyCode());
?? ??? ?if (e.getKeyCode() == KeyEvent.VK_DOWN) {
?
?? ??? ??? ?// System.out.println("12");
?
?? ??? ??? ?y = y + 1;
?? ??? ??? ?if (y >= 11) {
?? ??? ??? ??? ?y = y % 11 + 1;
?? ??? ??? ?}
?
?? ??? ?} else if (e.getKeyCode() == KeyEvent.VK_UP) {
?? ??? ??? ?y = y - 1;
?? ??? ??? ?if (y < 1) {
?? ??? ??? ??? ?y = y + 10;
?? ??? ??? ?}
?
?? ??? ?} else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
?? ??? ??? ?x = x - 1;
?? ??? ??? ?if (x < 1) {
?? ??? ??? ??? ?x = x + 10;
?? ??? ??? ?}
?? ??? ?} else if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
?
?? ??? ??? ?x = x + 1;
?? ??? ??? ?if (x >= 11) {
?? ??? ??? ??? ?x = x % 11 + 1;
?? ??? ??? ?}
?
?? ??? ?} else if (e.getKeyCode() == KeyEvent.VK_SPACE) {
?? ??? ??? ?int luo1 = x;
?? ??? ??? ?int luo2 = y;
?
?? ??? ??? ?Node n2 = new Node(luo1, luo2);
?? ??? ??? ?if (jishu % 2 != 0) {
?? ??? ??? ??? ?Node now3 = seq2.head;
?? ??? ??? ??? ?Node now2 = seq.head;
?? ??? ??? ??? ?int aaa = 1;
?
?? ??? ??? ??? ?if (arr[x][y] == 1 || arr[x][y] == 2) {
?? ??? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "此處已有棋子,請下別處", "錯誤", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ??? ??? ?aaa = 2;
?
?? ??? ??? ??? ?}
?
?? ??? ??? ??? ?if (aaa == 1) {
?
?? ??? ??? ??? ??? ?jishu++;
?? ??? ??? ??? ??? ?seq.add(n2);
?? ??? ??? ??? ??? ?arr[luo1][luo2] = 1;
?? ??? ??? ??? ??? ?seq.tostring();
?? ??? ??? ??? ??? ?System.out.println("摁下空格");
?? ??? ??? ??? ??? ?soushang(x, y);
?
?? ??? ??? ??? ??? ?System.out.println("sum1" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souxia(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum2" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm = 1;
?? ??? ??? ??? ??? ?souzuo(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum3" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souyou(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum4" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm = 1;
?
?? ??? ??? ??? ??? ?soushangzuo(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum5" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souyouxia(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum6" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm = 1;
?? ??? ??? ??? ??? ?souyoushang(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum7" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?souxiazuo(x, y);
?? ??? ??? ??? ??? ?if (summm == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm = 1;
?? ??? ??? ??? ?}
?
?? ??? ??? ?} else {
?? ??? ??? ??? ?int aaa = 1;
?
?? ??? ??? ??? ?if (arr[x][y] == 1 || arr[x][y] == 2) {
?? ??? ??? ??? ??? ?JOptionPane.showMessageDialog(sc, "此處已有棋子,請下別處", "錯誤", JOptionPane.WARNING_MESSAGE);
?? ??? ??? ??? ??? ?aaa = 2;
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?if (aaa == 1) {
?
?? ??? ??? ??? ??? ?jishu++;
?? ??? ??? ??? ??? ?seq2.add(n2);
?? ??? ??? ??? ??? ?arr[luo1][luo2] = 2;
?? ??? ??? ??? ??? ?seq2.tostring();
?? ??? ??? ??? ??? ?System.out.println("摁下空格");
?? ??? ??? ??? ??? ?soushang2(x, y);
?
?? ??? ??? ??? ??? ?System.out.println("sum1" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souxia2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum2" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm2 = 1;
?? ??? ??? ??? ??? ?souzuo2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum3" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souyou2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum4" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm2 = 1;
?
?? ??? ??? ??? ??? ?soushangzuo2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum5" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?
?? ??? ??? ??? ??? ?souyouxia2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum6" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm2 = 1;
?? ??? ??? ??? ??? ?souyoushang2(x, y);
?? ??? ??? ??? ??? ?System.out.println("sum7" + " ?" + summm);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?souxiazuo2(x, y);
?? ??? ??? ??? ??? ?if (summm2 == 5) {
?? ??? ??? ??? ??? ??? ?seq.head = null;
?? ??? ??? ??? ??? ??? ?seq2.head = null;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?summm2 = 1;
?
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?for (int i = 1; i <= 10; i++) {
?? ??? ??? ??? ?for (int k = 1; k <= 10; k++) {
?? ??? ??? ??? ??? ?System.out.print(arr[i][k] + " ");
?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?System.out.println();
?
?? ??? ??? ?}
?
?? ??? ?}
?? ??? ?kai.huan(x, y);
?
?? ??? ?// 調用repaint()函數(shù),來重繪界面
?? ??? ?this.repaint();
?? ?}
?
?? ?class Node {// 設置 節(jié)點類
?? ??? ?int a;
?? ??? ?int b;
?? ??? ?Node next;
?
?? ??? ?Node(int a, int b) {
?? ??? ??? ?this.a = a;
?? ??? ??? ?this.b = b;
?? ??? ??? ?this.next = null;
?? ??? ?}
?
?? ?}
?
?? ?class seqlist {// 設置鏈表類
?? ??? ?Node head;
?? ??? ?Node tail;
?
?? ??? ?int n = 0;
?
?? ??? ?public seqlist(Node head) {
?? ??? ??? ?// TODO Auto-generated constructor stub
?? ??? ??? ?this.head = head;
?? ??? ??? ?this.tail = head;
?? ??? ??? ?n++;
?? ??? ?}
?
?? ??? ?void add(Node p) {
?? ??? ??? ?Node now = head;
?? ??? ??? ?p.next = now;
?? ??? ??? ?head = p;
?? ??? ??? ?n++;
?
?? ??? ?}
?
?? ??? ?void tostring() {
?? ??? ??? ?Node now = head;
?? ??? ??? ?System.out.print("線性表為");
?? ??? ??? ?while (now != null) {
?? ??? ??? ??? ?System.out.print(now.a + ",");
?? ??? ??? ??? ?now = now.next;
?? ??? ??? ?}
?? ??? ??? ?System.out.println();
?
?? ??? ?}
?
?? ??? ?int length() {
?? ??? ??? ?return n;
?
?? ??? ?}
?
?? ??? ?void insert(int a, Node b) {
?? ??? ??? ?Node now1 = head;
?? ??? ??? ?for (int i = 0; i < a - 1; i++) {
?? ??? ??? ??? ?now1 = now1.next;
?? ??? ??? ?}
?? ??? ??? ?b.next = now1.next;
?? ??? ??? ?now1.next = b;
?? ??? ??? ?n++;
?? ??? ?}
?
?? ??? ?void delete(int a) {
?? ??? ??? ?Node now1 = head;
?? ??? ??? ?for (int i = 0; i < a - 1; i++) {
?? ??? ??? ??? ?now1 = now1.next;
?? ??? ??? ?}
?? ??? ??? ?now1.next = now1.next.next;
?? ??? ??? ?n--;
?
?? ??? ?}
?
?? ??? ?int geta(int n) {
?? ??? ??? ?Node now1 = head;
?? ??? ??? ?for (int i = 0; i < n - 1; i++) {
?? ??? ??? ??? ?now1 = now1.next;
?
?? ??? ??? ?}
?? ??? ??? ?return now1.a;
?
?? ??? ?}
?
?? ??? ?void huan(int a, int b) {
?? ??? ??? ?head.a = a;
?? ??? ??? ?head.b = b;
?
?? ??? ?}
?
?? ??? ?int getb(int n) {
?? ??? ??? ?Node now1 = head;
?? ??? ??? ?for (int i = 0; i < n - 1; i++) {
?? ??? ??? ??? ?now1 = now1.next;
?
?? ??? ??? ?}
?? ??? ??? ?return now1.b;
?
?? ??? ?}
?
?? ?}
?
?? ?// 鍵被釋放
?? ?@Override
?? ?public void keyReleased(KeyEvent e) {
?? ?}
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java package編譯亂碼問題解決

    Java package編譯亂碼問題解決

    這篇文章主要介紹了Java package編譯亂碼問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • Spring boot 整合 Okhttp3 并封裝請求工具實例 詳解

    Spring boot 整合 Okhttp3 并封裝請求工具實例 詳解

    OkHttp作為一款成熟、穩(wěn)定、易用的HTTP客戶端庫,擁有較高的性能和多樣化的功能,已被廣泛應用于移動應用開發(fā)、Web服務端開發(fā)等領域,這篇文章主要介紹了Spring boot 整合 Okhttp3 并封裝請求工具,需要的朋友可以參考下
    2023-08-08
  • Spring根據(jù)XML配置文件注入屬性的方法

    Spring根據(jù)XML配置文件注入屬性的方法

    下面小編就為大家?guī)硪黄猄pring根據(jù)XML配置文件注入屬性的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • Spring項目中swagger用法與swagger-ui使用

    Spring項目中swagger用法與swagger-ui使用

    這篇文章主要介紹了Spring項目中swagger用法與swagger-ui使用,通過圖文并茂的形式給大家介紹了編寫springboot項目的方法及導入spring-fox依賴的代碼詳解,需要的朋友可以參考下
    2021-05-05
  • Java應用層協(xié)議WebSocket實現(xiàn)消息推送

    Java應用層協(xié)議WebSocket實現(xiàn)消息推送

    后端向前端推送消息就需要長連接,首先想到的就是websocket,下面這篇文章主要給大家介紹了關于java后端+前端使用WebSocket實現(xiàn)消息推送的詳細流程,需要的朋友可以參考下
    2023-02-02
  • SpringBoot2整合Redis實現(xiàn)讀寫操作

    SpringBoot2整合Redis實現(xiàn)讀寫操作

    Redis,對于大家來說應該不陌生,是經(jīng)常使用的開發(fā)技術之一。本文將結合實例代碼,介紹SpringBoot2整合Redis實現(xiàn)讀寫操作,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 23種設計模式(10)java組合模式

    23種設計模式(10)java組合模式

    這篇文章主要為大家詳細介紹了23種設計模式之java組合模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Springboot繼承Keycloak實現(xiàn)單點登錄與退出功能

    Springboot繼承Keycloak實現(xiàn)單點登錄與退出功能

    這篇文章主要介紹了Springboot繼承Keycloak實現(xiàn)單點登陸與退出,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • 徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Driver問題

    徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Dr

    這篇文章給大家介紹了如如何徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Driver問題,文中有詳細的解決思路以及解決方法,需要的朋友可以參考下
    2023-11-11
  • Java AtomicInteger類的使用方法詳解

    Java AtomicInteger類的使用方法詳解

    這篇文章主要介紹了Java AtomicInteger類的使用方法詳解,文中有具體實例代碼,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10

最新評論