|
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中
2 L; c5 A( G9 @$ Q$ \# Upublic void spreadMoney(int money){8 Z# O* x/ k* [# v' d, D
// Randomly place money in moneySpace3 f% q/ q: f/ {# D- L. K; ^& l+ w
for(int i = 0; i < money; i++){# y% H9 l% ]2 T6 t8 O% ^
% D- A6 ~: f- L5 n; w4 c: ^0 L1 @1 Y // Choose coordinates
0 p1 }; L+ `5 J' o, y1 C7 A- H int x = (int)(Math.random()*(moneySpace.getSizeX()));/ [9 D# z3 ]0 J Q$ }: Y
int y = (int)(Math.random()*(moneySpace.getSizeY()));0 c! M) I9 T; ?/ H" W6 O: S
) c5 S7 G" y* H // Get the value of the object at those coordinates# F& o) s% h/ [3 E3 K
int I;
9 R# ]& V2 J& ^6 A# o! m if(moneySpace.getObjectAt(x,y)!= null){7 b' B* w: q- N- }% E' Z& p1 ]
I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();% t! g6 v2 y5 T+ r$ Z
} s4 L; k9 D4 G ?- d- K
else{
) b$ Y+ x; a; D- N8 @4 P I = 0;3 P6 n- b- ]3 X/ _7 P5 q5 z- f" O
}3 a, J) I* _1 F j; [/ `
// Replace the Integer object with another one with the new value
M0 l9 r/ r" |- @/ r moneySpace.putObjectAt(x,y,new Integer(I + 1));# ]% \ X2 {: O; Y( u2 L4 l# b$ h
}: u/ b: L- R) N
这里面if(moneySpace.getObjectAt(x,y)!= null){3 G* B* ^+ g9 v6 k* V' i. x
I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();8 i) u! d7 e" j
}% k' w/ ^# H) s9 u$ D6 j
else{
4 z5 X; i8 \5 ~: D- e& u- m I = 0;6 Z$ q1 k( s# u. x2 e, B9 @$ f! a
是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?" p9 `# w. h# P8 X4 h
初学者,还请见谅! |
|