豪斯游戏 java程序

  • H8_157784
    了解作者
  • 2KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-05 08:20
    上传日期
该程序是由java编写的游戏程序,采用良好的界面
Squeezer.rar
  • Squeezer.java
    6.4KB
内容介绍
import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; public class Squeezer extends JFrame { private String number[]={ "Ace","Deuce","Three","Four","Five","Six", "Seven","Eight","Nine","Ten","Jack","Queen","King" }; private String color[]={"方块","草花","红心","黑桃"}; private JPanel panel; private JTextField text; private JTextArea area1,area2; private JButton button1,button2; private boolean flag=false; private int a[]=new int[5],b[]=new int[5],register[][]=new int[14][4]; private int time,same1=0,same2=0; public Squeezer() { super("豪斯"); setResizable(false); setLayout(null); panel=new JPanel(); panel.setBounds(10,10,360,50); panel.setLayout(null); panel.setBorder(BorderFactory.createTitledBorder("选项")); text=new JTextField(); text.setEditable(false); text.setBounds(30,17,180,25); panel.add(text); button1=new JButton("发牌"); button1.setBounds(220,13,60,30); panel.add(button1); button2=new JButton("洗牌"); button2.setBounds(285,13,60,30); panel.add(button2); add(panel); area1=new JTextArea(); area1.setEditable(false); area1.setBounds(10,65,360,120); area1.setBorder(BorderFactory.createLineBorder(Color.LIGHT_GRAY)); add(area1); area2=new JTextArea(); area2.setEditable(false); area2.setBounds(10,190,360,60); area2.setBorder(BorderFactory.createLineBorder(Color.LIGHT_GRAY)); add(area2); ExamHandler handler=new ExamHandler(); button1.addActionListener(handler); button2.addActionListener(handler); setSize(400,300); setBackground(Color.white); setVisible(true); } private class ExamHandler implements ActionListener { public void actionPerformed( ActionEvent event ) { if(event.getSource()==button1) { area1.setText(""); area2.setText(""); if(flag==false) { JOptionPane.showMessageDialog(null,"请先洗牌"); } else { if(time==10) { text.setText("牌组已尽,请重新洗牌"); flag=false; } else { boolean t=true,second=false; int substitute; int gap=0,order=0,amount=0; calculate(); /*a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5; b[0]=2; b[1]=1; b[2]=1;b[3]=1;b[4]=1;*/ for(int i=0;i<5;i++) { area1.append(number[a[i]]+" "+color[b[i]]+"\n"); } time++; text.setText("牌组还有"+(52-5*time)+"张牌"); for(int i=0;i<5;i++) { for(int j=i+1;j<5;j++) { if(a[i]>a[j]) { substitute=a[i]; a[i]=a[j]; a[j]=substitute; } } } order=1; for(int i=0;i<1&&t==true;i++) { for(int j=i+1;j<5&&t==true;j++) { if(a[j]!=a[i]+order) { t=false; } order++; } if(t==true) { gap=1; } } //System.out.println(t); same1=0; same2=0; for(int i=0;i<5&&t==false;i++) { for(int j=i+1;j<5&&t==false;j++) { if(a[i]==a[j]) { amount++; i=j; } else if(a[i]!=a[j]&&amount>0&&second==false) { same1=amount; amount=0; second=true; i=j-1; } if(second==true) { same2=amount; } else { same1=amount; } } } /*System.out.println(second); System.out.println(amount+","+same1+","+same2);*/ if(second==true&&same2>0) { if(same1==2||same2==2) { area2.append(" 满堂红\n"); } else { area2.append(" 两对\n"); } } else { if(same1==1) { area2.append(" 一对\n"); } else if(same1==2) { area2.append("3张同点的牌\n"); } else if(same1==3) { area2.append(" 4张同点的牌\n"); } } t=true; for(int i=0;i<5&&t==true;i++) { for(int j=i+1;j<5&&true;j++) { if(b[i]!=b[j]) { t=false; } } } if(t==true&&gap==1) { area2.append("同花顺\n"); } else if(t==true&&gap!=1) { area2.append("同花\n"); } else if(t==false&&gap==1) { area2.append("顺子\n"); } } } } if(event.getSource()==button2) { for(int i=0;i<13;i++) { for(int j=0;j<4;j++) { register[i][j]=0; } } flag=true; time=0; text.setText("洗牌完成,请发牌"); area1.setText(""); area2.setText(""); } } } public void calculate() { boolean t1=true; int t2=0; while(t1) { Random stochastic = new Random(); int i=stochastic.nextInt(13); int j=stochastic.nextInt(4); if(register[i][j]==0) { register[i][j]=1; a[t2]=i; b[t2]=j; t2++; } if(t2==5) { t1=false; } } } public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception exception) { exception.printStackTrace(); } Squeezer frame = new Squeezer(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }
评论
    相关推荐
    • JAVA“连连看”游戏程序设计
      JAVA“连连看”游戏程序设计 《Java与对象分布技术》课程设计报告
    • java贪吃蛇游戏程序设计
      该程序为贪吃蛇游戏程序,是针对贪吃蛇小游戏的JAVA程序,利用方向键来改变蛇的运行方向,空格键暂停或继续游戏,并在随机的地方产生食物,吃到食物就变成新的蛇体,并且是用红蓝间隔画蛇身,碰到壁或自身则游戏结束...
    • java猜拳游戏程序
      int count = 0; Scanner input = new Scanner(System.in); User person = new User(); Computer computer =new Computer(); public void chuShiHua(){
    • java拼图游戏程序
      java拼图游戏的实例,源码,不错
    • java程序游戏
      FlyingBrid小游戏FlyingBrid小游戏FlyingBrid小游戏FlyingBrid小游戏
    • 扫雷游戏程序(java)
      游戏Java编写的,完全可以当作你的业余爱好,而且玩此游戏可以开拓你的思维,还等什么,赶紧加入
    • Java连连看游戏程序源码
      Java语言编写,有详细注释,用到了gui JavaJavaJavaJavaJavaJavaJavaJavaJavaJavaJavaJavaJavaJavaJava
    • java编写网络五子棋游戏程序
      Java开发典型模块大全》一书中的源代码。 经典代码! 非常值得借鉴和学习!
    • Java编写的五子棋游戏程序
      Java编写的五子棋游戏,主要是适合学生学习借鉴的,呵呵
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档