Java實現石頭剪刀布遊戲
阿新 • • 發佈:2020-10-12
本文例項為大家分享了Java實現石頭剪刀布遊戲的具體程式碼,供大家參考,具體內容如下
題目:
用 JAVA 語言設計如下介面的石頭剪刀布遊戲。遊戲的一方點選介面上石頭、剪刀、布按鈕,遊戲的另一方計算機隨機選擇,然後給出遊戲結果。
Java:
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; @SuppressWarnings("serial") public class TestOne extends JFrame implements ActionListener{ // 定義石頭剪刀布的 JButton 物件 JButton jiandao,shitou,bu,clear; JPanel panel2,panel1; JLabel label; // 主函式 public static void main(String[] args) { TestOne frame = new TestOne(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 設定窗體關閉按鈕 frame.setVisible(true); // 使窗體可見 } // 設定窗體 public TestOne() { setTitle("石頭剪刀布遊戲"); // 石頭剪刀布遊戲 setLocation(250,250); // 設定窗體坐上頂點座標 setSize(300,300); // 設定窗體大小。窗體大小 : 350X350 // 建立物件 panel1 = new JPanel(); panel1.setBackground(Color.yellow); shitou = new JButton("石頭"); jiandao = new JButton("剪刀"); bu = new JButton("布"); clear = new JButton("清空"); panel2 = new JPanel(); panel2.setBackground(Color.green); label = new JLabel("選擇剪刀,石頭,布開始遊戲"); // 給所有 JBUtton 物件新增事件約束 // 給事件新增監聽器 shitou.addActionListener(this); jiandao.addActionListener(this); bu.addActionListener(this); clear.addActionListener(this); // 把所有的新新增的物件都放進去窗體裡面,先放進元件類,再放進窗體類 panel1.add(shitou); panel1.add(jiandao); panel1.add(bu); panel1.add(clear); panel2.add(label); add(panel1,BorderLayout.NORTH); add(panel2,BorderLayout.CENTER); } // 事件響應器 public void actionPerformed(ActionEvent e) { if(e.getSource() == shitou) { int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出石頭,電腦出石頭,平局!"); break; case 1: label.setText("你出石頭,電腦出剪刀,恭喜你贏了!"); break; case 2: label.setText("你出石頭,電腦出布,很遺憾你輸了!"); break; } }else if(e.getSource() == jiandao){ int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出剪刀,電腦出石頭,很遺憾你輸了!"); break; case 1: label.setText("你出剪刀,電腦出剪刀,平局!"); break; case 2: label.setText("你出剪刀,電腦出布,恭喜你贏了!"); break; } }else if(e.getSource() == bu){ int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出布,電腦出石頭,恭喜你贏了!"); break; case 1: label.setText("你出布,電腦出剪刀,很遺憾你輸了!"); break; case 2: label.setText("你出布,電腦出布,平局!"); break; } }else if(e.getSource() == clear) { label.setText("選擇剪刀,布開始遊戲!"); } } }
執行結果:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。