自己写的版本1:
import java. util. *;
public class DemoDDZ {
public static void main ( String[ ] args) {
ArrayList< String> style = new ArrayList < > ( ) ;
ArrayList< String> num = new ArrayList < > ( ) ;
ArrayList< String> card = new ArrayList < > ( ) ;
ArrayList< String> one = new ArrayList < > ( ) ;
ArrayList< String> two = new ArrayList < > ( ) ;
ArrayList< String> three = new ArrayList < > ( ) ;
style. add ( "♠" ) ;
style. add ( "♥" ) ;
style. add ( "♦" ) ;
style. add ( "♣" ) ;
num. add ( "A" ) ;
num. add ( "2" ) ;
num. add ( "3" ) ;
num. add ( "4" ) ;
num. add ( "5" ) ;
num. add ( "6" ) ;
num. add ( "7" ) ;
num. add ( "8" ) ;
num. add ( "9" ) ;
num. add ( "10" ) ;
num. add ( "J" ) ;
num. add ( "Q" ) ;
num. add ( "K" ) ;
for ( int i = 0 ; i < style. size ( ) ; i++ ) {
for ( int i1 = 0 ; i1 < num. size ( ) ; i1++ ) {
card. add ( style. get ( i) + num. get ( i1) ) ;
}
}
card. add ( "大王" ) ;
card. add ( "小王" ) ;
Collections. shuffle ( card) ;
for ( int i = 0 ; i < card. size ( ) - 3 ; i += 3 ) {
one. add ( card. get ( i) ) ;
two. add ( card. get ( i + 1 ) ) ;
three. add ( card. get ( i + 2 ) ) ;
}
System. out. println ( one) ;
System. out. println ( two) ;
System. out. println ( three) ;
}
}
版本2
import java. util. *;
public class DemoDDZ {
public static void main ( String[ ] args) {
ArrayList< String> style = new ArrayList < > ( ) ;
ArrayList< String> num = new ArrayList < > ( ) ;
ArrayList< String> card = new ArrayList < > ( ) ;
ArrayList< String> one = new ArrayList < > ( ) ;
ArrayList< String> two = new ArrayList < > ( ) ;
ArrayList< String> three = new ArrayList < > ( ) ;
ArrayList< String> leftcard = new ArrayList < > ( ) ;
style. add ( "♠" ) ;
style. add ( "♥" ) ;
style. add ( "♦" ) ;
style. add ( "♣" ) ;
num. add ( "A" ) ;
num. add ( "2" ) ;
num. add ( "3" ) ;
num. add ( "4" ) ;
num. add ( "5" ) ;
num. add ( "6" ) ;
num. add ( "7" ) ;
num. add ( "8" ) ;
num. add ( "9" ) ;
num. add ( "10" ) ;
num. add ( "J" ) ;
num. add ( "Q" ) ;
num. add ( "K" ) ;
for ( int i = 0 ; i < style. size ( ) ; i++ ) {
for ( int i1 = 0 ; i1 < num. size ( ) ; i1++ ) {
card. add ( style. get ( i) + num. get ( i1) ) ;
}
}
card. add ( "大王" ) ;
card. add ( "小王" ) ;
Collections. shuffle ( card) ;
for ( int i = 0 ; i < 3 ; i++ ) {
leftcard. add ( card. get ( card. size ( ) - 1 ) ) ;
card. remove ( card. size ( ) - 1 ) ;
}
Iterator< String> ite = card. iterator ( ) ;
while ( ite. hasNext ( ) ) {
one. add ( ite. next ( ) ) ;
two. add ( ite. next ( ) ) ;
three. add ( ite. next ( ) ) ;
}
System. out. println ( one) ;
System. out. println ( two) ;
System. out. println ( three) ;
}
}
发牌过程优化思想
优化后代码
import java. util. *;
public class DemoDDZ {
public static void main ( String[ ] args) {
ArrayList< String> card = new ArrayList < > ( ) ;
ArrayList< String> one = new ArrayList < > ( ) ;
ArrayList< String> two = new ArrayList < > ( ) ;
ArrayList< String> three = new ArrayList < > ( ) ;
ArrayList< String> leftcard = new ArrayList < > ( ) ;
String[ ] style = { "♠" , "♥" , "♦" , "♣" } ;
String[ ] num = { "A" , "2" , "3" , "4" , "5" , "6" , "7" , "8" , "9" , "10" , "J" , "Q" , "K" } ;
for ( int i = 0 ; i < style. length; i++ ) {
for ( int i1 = 0 ; i1 < num. length; i1++ ) {
card. add ( style[ i] + num[ i1] ) ;
}
}
card. add ( "大王" ) ;
card. add ( "小王" ) ;
Collections. shuffle ( card) ;
for ( int i = 0 ; i < card. size ( ) ; i++ ) {
if ( i < 51 ) {
if ( i % 3 == 0 ) {
one. add ( card. get ( i) ) ;
} else if ( i % 3 == 1 ) {
two. add ( card. get ( i) ) ;
} else {
three. add ( card. get ( i) ) ;
}
} else {
leftcard. add ( card. get ( i) ) ;
}
}
System. out. println ( one) ;
System. out. println ( two) ;
System. out. println ( three) ;
System. out. println ( leftcard) ;
}
}