java代码和牌的算法 java 代码

java洗牌算法问题你指的是Card里的toString方法吧
public String toString() {
String aa = suit" "num"";
return aa;
}
toString这个方法一般在 System.out.print时使用 , 这个是打印出String,JVM就是默认调用类的toSting方法
注:所有类都有toString方法,默认是当前对象的hashcode,即内存地址
所以在发牌是打印
public void dealcard()//发牌
{
for(int i=0;i52;i)
{
if(i%4==0i!=0){
【java代码和牌的算法 java 代码】System.out.println();//每发4张牌输出换行
}
// 就是这里,默认调用card的toString方法
System.out.print(card[i]); //依次输出 发的牌
}
}
用JAVA写个代码,实现52张牌随机分给四个人java内的Collections类自带了一个shuffle洗牌算法 。
static void shuffle(List? list)
使用默认随机源对指定列表进行置换 。
static void shuffle(List? list, Random rnd)
使用指定的随机源对指定列表进行置换 。
现在你可以把52张牌放进一个List里 , 调用他的shuffle算法打乱顺序 。
JAVA 一副牌程序 求讲解首先每个牌都被编了号码!从0到52(这里没有带大小王,当然你带着是54张,算法也是一样的),因为不管是那个颜色的牌都有13张,对吧!然后除以13,取整数部分,你看对应的数字是几的就是那种花色的! 按照题意 0肯定代表黑桃,1代表红桃 2代表方块 3代表梅花,(这你应该能像的到吧!如果想不到,忽略一下内容,呵呵),然后就是说对13取余数,假设他拿的是红桃A,红桃A在编号中是13对吧? 13 / 13 = 1,决定他是红桃,13 % 13 = 0 ,决定他是红桃里面的第一个,那么他就是A,(有点绕,你仔细想想).其他的一次类推!!希望能帮到你!!!!
关于java代码和牌的算法和java 代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读