Java基础实验2-牌游戏
来源:互联网 发布:notepad 写sql 编辑:程序博客网 时间:2024/06/11 02:36
2-6人之间发牌,按要求输出,考数组的使用。当然也可以用集合……
发现对变量和方法的命名实在是个学问,都说编程之美的一部分,我的命名估计只有我能看懂了。优化再看吧,挖个坑,要把这个发牌东东用集合再写,加个界面~~
先来个二维数组的
import java.util.Scanner;public class CardGame {static String[] numcards = {"Ace","2","3","4","5","6","7","8","9","10","Jack","Queen","King"};static int[] deck = new int[52];public static void init(){for (int i = 0; i < deck.length; i++){deck[i] = i;}for (int i = 0; i < deck.length; i++){int m = (int)(Math.random()*deck.length);int temp = deck[i];deck[i] = deck[m];deck[m] = temp;}}public static int inputPlayers(){System.out.println("input the num of players:");Scanner input = new Scanner(System.in);int players = input.nextInt();while (players > 6 || players < 2){System.out.println("It must be between 2 and 6!please enter again:");input = new Scanner(System.in);players = input.nextInt();}return players;}public static void gamemain(){int n = inputPlayers();int s = (int)(deck.length/n);int[][] playcards = new int[n][];for (int j = 0; j < n-1; j++){playcards[j] = new int[s];}playcards[n-1] = new int[deck.length-(n-1)*s];for (int j = 0,p = 0; j < n; j++){for (int index = 0; index < playcards[j].length; index++){playcards[j][index] = deck[p];p++;}java.util.Arrays.sort(playcards[j]);}display(n,playcards);}public static void display(int n,int[][] playcards){int m = 0, k = 0;for (int a = 0; a < n; a++){System.out.println("the " + (a + 1) + " player's cards: ");for ( k = 0; k < playcards[a].length-1 ; k++){if ((playcards[a][k]/13) != (playcards[a][k+1]/13)) {switch (playcards[a][k]/13){case 0: System.out.printf("Spade: ");break;case 1: System.out.printf("Heart: ");break;case 2: System.out.printf("Club: ");break;}for (int b = k; b >= m; b--){System.out.printf(numcards[playcards[a][b]%13] + " ");}m = k +1;System.out.println();}if (playcards[a][k+1]/13 == 3) {break;}}//print the diamondSystem.out.printf("Diamond: ");for (int c = playcards[a].length-1; c >= m; c--) {System.out.printf(numcards[playcards[a][c]%13] + " ");}System.out.println();}}public static void main(String[] args){init();gamemain();}}
- Java基础实验2-牌游戏
- JAVA--第2周实验--猜数字游戏
- Java第三章上机实践-实验2-猜数字游戏
- java实验1-6:猜数字游戏
- java基础,游戏开发知识
- java基础之猜拳游戏
- java语言基础实验报告 第二个实验
- 游戏开发基础(2)
- Java基础实验1-猜数字
- 图形学实验2-二维射击游戏
- 第二周JAVA上机实验(三)猜数游戏
- Java 实验2
- Java程序设计实验2
- Java实验1,2
- JAVA实验2
- JAVA实验(2)
- 跟我学Java Swing之游戏设计(2)-Java基础-Java-编程开发
- java基础作业之猜数字游戏;
- GDI+中 PixelFormat说明表
- java,jsp导出excel时的日期和时间问题
- 百度BAE JAVA环境项目部署和调试
- select poll epoll(总结)更新中......
- Unrecognized Windows Sockets error: 0: JVM_Bind 异常解决办法
- Java基础实验2-牌游戏
- J2EE中的MVC模型介绍
- VS2012使用学习
- Javascript实现冒泡排序
- 最长递增子序列-O(NlogN)
- 内存分配失败处理
- PHP 介绍及语法简介
- struts2注解
- Struts2 中 Session 的使用