一个集合的题目,我第四问不会做,求帮忙啊!
package com.chinasoft.pai;//编程课题:利用Collection提供的排序,搜索,洗牌方法编写一个程序使其具有以下功能:
//(1)对一副扑克牌洗牌。(2)按照红桃,黑桃,梅花,方块排序。
//(3)按照2或4人分牌,并显示每人的牌。(4)查询是否有一对牌以及他在牌中的位置。
//这个第四问怎么做啊??求解。
import java.util.*;
public class Xipai {
public static void main(String[] args){
String[] paiList=new String[]{"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
String[] huase=new String[]{"红桃","黑桃","梅花","方块"};
String[] paiz=new String[52];
String[] shit=new String[52];
int j=0;
int r=0;
int e=0;
for(int i=0;i<huase.length;i++){
for(int o=0;o<paiList.length;o++){
paiz[r]=huase[i]+" "+paiList[o];
++r;
}
}
for(int i=0;i<paiz.length;i++) //以下是对上面字符串数组的按花色排序
{
if(paiz[i].substring(0, 2).equals("红桃"))
{
shit[j]=paiz[i];
j++;
}
}
for(int i=0;i<paiz.length;i++)
{
if(paiz[i].substring(0, 2).equals("黑桃"))
{
shit[j]=paiz[i];
j++;
}
}
for(int i=0;i<paiz.length;i++)
{
if(paiz[i].substring(0, 2).equals("方块"))
{
shit[j]=paiz[i];
j++;
}
}
for(int i=0;i<paiz.length;i++)
{
if(paiz[i].substring(0, 2).equals("梅花"))
{
shit[j]=paiz[i];
j++;
}
}
for(int k=0;k<shit.length;k++) //以下是将原来的数组赋值到新的数组中,实现排序的输出
{
System.out.print(shit[k]+" ");
}
System.out.println();
System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
List<String> pai= Arrays.asList(shit); //以下三行是将数组转换成集合,并调用洗排方法洗排
Collections.shuffle(pai);
System.out.println("洗牌后的结果为:\n"+pai);
//以下 三行为分排实现
System.out.println("$$$$$$$$$$$$$$$$$$$$$$$$$---将排分给二个人---$$$$$$$$$$$$$$$$$$$$$$$$");
System.out.println("第一个人分到的排:\n"+pai.subList(0,26));
System.out.println("第二个人分到的排:\n"+pai.subList(26,52));
//查询是否有相同的排?
}
}