Java与JavaScript实现扑克牌洗牌算法详解
作者:阿沐时间:2026-10-23 11:39:13浏览:315
本文介绍了使用Java和JavaScript两种语言实现扑克牌洗牌的小程序。内容涵盖从生成52张标准扑克牌到利用随机算法打乱顺序的完整过程,并对比了两种语言在数组操作与循环逻辑上的实现差异,最后对代码结构进行了简要总结。
Java与JavaScript实现扑克牌洗牌算法详解
近期学习了Java和JavaScript,基于这两门语言编写了一个简单的洗牌程序示例。
JavaScript洗牌代码实现
以下是JavaScript版本的实现代码。
// An highlighted block
var colors = ['红桃','梅花','方片','黑桃']
var numbers = ['2','3','4','5','6','7','8','9','10','J','Q','K','A']
var puke = new Array();
var cards = new Array();
for (var i = 0; i < 52; i++){
cards[i] = i
}
console.log("洗牌前");
for (var i = 0; i < 52; i++) {
puke [i] = colors[parseInt(cards[i]/13)]+numbers[cards[i]%13]
}
console.log(puke)
console.log("洗牌后")
puke.sort(function () {
return 0.5-Math.random()
})
console.log(puke)
Java洗牌代码实现
接着是Java版本的实现代码。
public class Puke{
public static void main(String[] args) {
// TODO Auto-generated method stub
String colors[] = {"黑桃","红桃","梅花","方片"};
String words[] = {"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
String[] cards = new String[52];
System.out.println("洗牌前:\n");
for (int i = 0; i < 52; i++) {
cards[i] = colors[i/13] + words[i%13];
if (i%13==0) {
System.out.println();
}
System.out.print(" "+cards[i]);
}
System.out.println();
System.out.println("洗牌后");
String str;
for(int i=0;i<cards.length;i++){
int e=(int) Math.round((cards.length-1)*Math.random());
str=cards[e];
cards[e]=cards[cards.length-1];
cards[cards.length-1]=str;
}
for (int i = 0; i < 52; i++) {
if (i%13==0) {
System.out.println();
}
System.out.print(" "+cards[i]);
}
}
}
代码逻辑总结
对上述两种实现方式进行总结。
以上介绍了Java和JS实现的洗牌小程序,希望能对大家有所帮助。如有任何疑问,欢迎留言,小编会及时回复。感谢大家对本站的支持!若觉得本文有用,欢迎转载,请注明出处,谢谢!
作者最新文章
为什么叫JavaScript:语言命名由来及与Java的历史渊源
2026-11-05 11:37:48
JS获取当前时间年月日时分秒并格式化为YYYY-MM-DD HH:mm:ss
2026-11-04 21:25:21
不同语言间JS与Java/Python加密结果不一致怎么办
2026-11-04 18:27:23
Mock.js 拦截 Axios 和 Fetch 请求的原理与配置方法
2026-11-04 08:13:59
JS怎么获取当前日期并格式化为YYYY-MM-DD
2026-11-03 18:47:03
