|
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中$ Q. W; k0 X' M2 B5 G4 y
public void spreadMoney(int money){' ^7 f7 R9 O) }" Q7 f
// Randomly place money in moneySpace9 l( r+ z( h, V% ?4 U9 w5 y
for(int i = 0; i < money; i++){: y0 t+ N! o; e0 B+ L
7 c, l$ Z+ l! t; L" g
// Choose coordinates
% `0 E* A- D) a: f* H" W ? int x = (int)(Math.random()*(moneySpace.getSizeX()));
; b% o( k: H# |6 U int y = (int)(Math.random()*(moneySpace.getSizeY()));/ P9 u' Z- A2 X$ O
* d* p! O$ ~! z! Q
// Get the value of the object at those coordinates) ~" v9 r& K7 z: }) H' V
int I;3 P* O9 y) N! l( T) r
if(moneySpace.getObjectAt(x,y)!= null){
- |; p, \9 I, a) `! H6 h% x8 d I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
6 k3 s* S, m K2 o: b: ` }
/ A1 h2 R* i: e0 W$ P8 U else{; z! j0 Z- h0 n; C, D" v! g& K
I = 0;
. {5 h7 b+ ^# N5 w8 I- M }' n. G# w5 |% @$ q
// Replace the Integer object with another one with the new value* e* P- a& T/ h; V) m
moneySpace.putObjectAt(x,y,new Integer(I + 1));/ ?/ p0 K& k: _% q
} y+ Y) a- o9 @' W. W
这里面if(moneySpace.getObjectAt(x,y)!= null){
C/ B! e& l- s$ E; k' _) Q5 A; v) V I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
0 c8 [9 d: u2 e( ]/ J }
' N' V; \7 L2 p0 V# G else{
7 R9 X) G' T" B& u" U- E I = 0;
2 q7 \0 i: y8 G1 W+ @& h! ^是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
/ g0 I6 L, F2 Q' D6 q: s初学者,还请见谅! |
|