0 赞 0 踩
其他回答
这个思路把你自己困住了。要求别人一定按你思路是不合理的。正确的思路,就应该是定义一个所有(54张)牌的数组,然后从中随机抽取一张、将其删除,然后将其 append 到一个新建的数组中,如此循环17次。解决现实问题的程序,要实现对现实情景的模拟。
你的思路,问题并不只在大小王上:整个过程中,已经抽到的牌都要抽出来的,不能被再次抽到。或者说,每次抽取的选择范围是不断变化的;同一张牌,每次被抽中的概率是不一样的。 热心网民 1小时前 0条评论
你的思路,问题并不只在大小王上:整个过程中,已经抽到的牌都要抽出来的,不能被再次抽到。或者说,每次抽取的选择范围是不断变化的;同一张牌,每次被抽中的概率是不一样的。 热心网民 1小时前 0条评论
0 赞 0 踩
如果用题主的思路,用(str2+str).indexOf("王")!=3可以把“XX大/小王"等全过滤掉(str2是花色,str是点数),输出17张牌就OK。
我的思路是把54张牌存入集合,洗牌后输出前17张。
我的思路是把54张牌存入集合,洗牌后输出前17张。
import java.util.LinkedList;import java.util.Collections;public class Test { private String[] types = {"黑桃", "红桃", "红心", "梅花"}; private String[] values = {"2", "3", "4", "5", "6", "7", "8" , "9", "10", "J", "Q", "K", "A"}; private LinkedList<String> cards = new LinkedList<String>(); public static void main(String[] args){ Test t = new Test(); t.initCards(); for (int i = 0 ; i < 17; i++){ System.out.println(t.cards.get(i)); } } //初始化扑克牌 private void initCards(){ //先插入除大小王外的52张 for (int i = 0; i < types.length; i++){ for(int j = 0; j < values.length; j++){ cards.add(types[i] + values[j]); } } //再插入大小王 cards.add("大王"); cards.add("小王"); //洗牌 Collections.shuffle(cards); }}
热心网民 1小时前 0条评论 0 赞 0 踩
登录后可回答 提交回答
关键词 :
- 上一个:怎样准备报考中央戏剧学院戏剧教育专业?
- 下一个:并且学习英语、法语前景如何?
推荐资讯
点击排行