|
|
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中+ |9 q" Y! w' X
public void spreadMoney(int money){
$ d8 G( c$ J; g- l; u // Randomly place money in moneySpace
1 B7 A' @- Y. r2 d for(int i = 0; i < money; i++){
1 t7 ?1 o8 F0 \, H9 o/ O# I! n5 J! G i F
// Choose coordinates
& t2 o6 ~9 Q9 A, D int x = (int)(Math.random()*(moneySpace.getSizeX()));0 H7 u0 P2 g o( \5 {, [
int y = (int)(Math.random()*(moneySpace.getSizeY()));
# q( U1 t5 Y' }; G9 s2 T' o/ A5 U% n9 ~
// Get the value of the object at those coordinates
/ s, @% \! K* q' i' q% h int I;% a6 I8 s! w" q5 K
if(moneySpace.getObjectAt(x,y)!= null){: o0 _9 A% T! J
I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();0 B% ?, F. m1 z2 ^; e1 \3 B
}* [% X. u- e& B( [
else{$ f# C6 r$ E, ~
I = 0;: y; p0 a% T) ^) u9 w5 Y
}
2 O( R" M% `" ~7 f4 p4 f$ v& | // Replace the Integer object with another one with the new value
# d O9 e: v/ h2 O" c" f3 `, h' P moneySpace.putObjectAt(x,y,new Integer(I + 1));9 k3 m$ l7 x) c: M4 q" P, |8 J4 f
}
9 Q6 e% W0 p7 F0 S- ]" s这里面if(moneySpace.getObjectAt(x,y)!= null){
4 Q+ N6 F) j. i+ H+ j I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
# M3 R- c4 ]- r* E+ g4 H } J$ ~* Y8 z3 j! | o
else{
* [; S: T9 ]5 ^; O* u0 | I = 0;
. o4 ^) F4 Q B3 P是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
% E* B: x. `" a# j' |4 e' ?0 N初学者,还请见谅! |
|