⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rpspanel.java

📁 java 写的石头剪子布游戏 java 写的石头剪子布游戏
💻 JAVA
字号:
import javax.swing.*;import java.awt.event.*;import java.awt.*;public class RPSPanel extends JPanel{	final static int STONE=0,SCISSOR=1,PAPER=2;	final static int WIN=0,LOSE=1,DRAW=2;	private JRadioButton stone,scissor,paper;	private JButton start,getResult;	private int user,computer,draw,			userSelect,computerSelect,			result; 	public RPSPanel()	{		JPanel temp;		UserListener listener;		setLayout(new BoxLayout(this,BoxLayout.Y_AXIS));		user=0;		computer=0;		draw=0;		userSelect=STONE;		stone=new JRadioButton("Stone",true);		scissor=new JRadioButton("Scissor");		paper=new JRadioButton("Paper");		listener=new UserListener();		stone.addActionListener(listener);		scissor.addActionListener(listener);		paper.addActionListener(listener);		ButtonGroup group=new ButtonGroup();		group.add(stone);		group.add(scissor);		group.add(paper);		temp=new JPanel();		temp.setLayout(new BoxLayout(temp,BoxLayout.X_AXIS));		temp.add(stone);		temp.add(scissor);		temp.add(paper);		add(temp);		start=new JButton("Start!");		start.addActionListener(new GameListener());		getResult=new JButton("get result");		getResult.addActionListener(new resultListener());		temp=new JPanel();		temp.setLayout(new BoxLayout(temp,BoxLayout.X_AXIS));		temp.add(start);		temp.add(getResult);		add(temp);	}	private class GameListener implements ActionListener	{		public void actionPerformed(ActionEvent event)		{			int computerSelect=(int)(Math.random()*3);			switch( userSelect )			{				case STONE:					switch( computerSelect )					{						case STONE:	++draw;result=draw;break;						case SCISSOR:	++user;result=WIN;break;						case PAPER:	++computer;result=LOSE;break;					}					break;				case SCISSOR:					switch( computerSelect )					{						case STONE:	++computer;result=LOSE;break;						case SCISSOR:	++draw;result=draw;break;						case PAPER:	++user;result=WIN;break;					}					break;				case PAPER:					switch( computerSelect )					{						case STONE:	++user;result=WIN;break;						case SCISSOR:	++computer;result=LOSE;break;						case PAPER:	++draw;result=draw;break;					}					break;			}			switch( result )			{				case WIN:					JOptionPane.showMessageDialog(null,"You Win!");					break;				case LOSE:					JOptionPane.showMessageDialog(null,"You Lose!");					break;				case DRAW:					JOptionPane.showMessageDialog(null,"It's a draw");					break;			}		}	}	private class UserListener implements ActionListener	{		public void actionPerformed(ActionEvent event)		{			Object source=event.getSource();			if( source==stone )			{				userSelect=STONE;			}			else if( source==scissor )			{				userSelect=SCISSOR;			}			else			{				userSelect=PAPER;			}		}	}	private class resultListener implements ActionListener	{		public void actionPerformed(ActionEvent event)		{			String buf="User:\t"+user					+"\nComputer:\t"+computer					+"\nDraw:\t"+draw;			JOptionPane.showMessageDialog(null,buf);		}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -