|
|
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中
! C" w0 P A1 s, F8 {public void spreadMoney(int money){
5 ^! H$ [. T0 q E( m8 j. s // Randomly place money in moneySpace. M# T) H3 u' V0 ?' |
for(int i = 0; i < money; i++){
) q5 ~# j3 S+ E& _ u, `9 n% u0 U4 \7 r3 }' g* ?) S
// Choose coordinates
3 q" E. `) k# E& O int x = (int)(Math.random()*(moneySpace.getSizeX()));
; L* D7 ?8 v2 r4 \. }0 F( t int y = (int)(Math.random()*(moneySpace.getSizeY()));
- J3 m, N4 X# ], ?+ i! U5 `
+ y+ Q9 x4 J9 s* o% H // Get the value of the object at those coordinates+ h) H$ |& ?2 n1 {5 I Z5 V
int I;9 E0 q% z/ D" a' {7 Y5 N; ?$ v
if(moneySpace.getObjectAt(x,y)!= null){
2 k- f8 |; I: W3 E, o# d I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();# R2 ]. S' L# i' Y) {
}
, O: ^( F- q6 f5 ~ else{
! H7 t& }: r' j; S4 Q# L, T' I+ I" ^$ m I = 0;; y3 c! W$ ~/ ], J* L# n
}
2 h& ?: X% j% T. y // Replace the Integer object with another one with the new value
9 a* D4 S# g$ R. ` moneySpace.putObjectAt(x,y,new Integer(I + 1));2 M m" G. B, b4 D- c9 q V
} t, t9 Q+ c! }. l
这里面if(moneySpace.getObjectAt(x,y)!= null){
0 Z4 p0 |. }8 c0 q. F/ y' c0 } I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();' E# ~7 e; E- i2 ]' P0 N1 x
}
2 s8 V. w# i5 W2 P else{
9 b# h2 n5 O# e+ w7 g$ D! @1 w8 X3 E I = 0;
( f; j0 a+ ?9 J+ `2 _是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
2 E l3 M* N2 \. h* o初学者,还请见谅! |
|