设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4040|回复: 0

[求助] 应该是个简单的问题

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中  y) V$ C7 P3 M0 y3 D! D, r4 m. J
public void spreadMoney(int money){9 _8 M. P- ?4 f# n
    // Randomly place money in moneySpace% _  I9 o3 G' P
    for(int i = 0; i < money; i++){4 X$ q. R- W! H* M, `1 L5 K! w8 w6 b

, b$ ^& P9 C/ [  l3 J! `' D( M      // Choose coordinates8 I  T0 w6 O8 o$ V* c" R7 g
      int x = (int)(Math.random()*(moneySpace.getSizeX()));
) b4 M5 c7 h) p6 O1 ?8 ^3 K, {      int y = (int)(Math.random()*(moneySpace.getSizeY()));& a( V  a1 z0 e2 ~+ K; Y

3 \0 C/ o; r9 h* A, p      // Get the value of the object at those coordinates
+ u) Z+ R$ v- I7 A      int I;
# ?$ V, h) o* _" P8 V* g, M      if(moneySpace.getObjectAt(x,y)!= null){
8 E: Y5 r: ~  u+ N6 v" E- g' _; |* S        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();( @1 k9 ~1 P& }( T5 U! P
      }- ~% I* _! {- W
      else{& u& j* n  g; ^) b* W
        I = 0;
# A2 d3 V/ o( K/ \      }
& K$ @* g$ _9 j- V; ~      // Replace the Integer object with another one with the new value
2 J+ E' J0 I$ J      moneySpace.putObjectAt(x,y,new Integer(I + 1));
. x0 P1 ^, r# ^' ~+ E  h4 G    }
6 I& f0 ?7 P/ q. R5 a) @
这里面if(moneySpace.getObjectAt(x,y)!= null){
0 P& I& m3 }! H# \: w0 u( x' _5 d9 w        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
+ N5 C! s& l5 b      }1 r9 B) F' b' B/ _5 z7 E
      else{
0 W9 Q6 K  _) I$ O        I = 0;

8 b, a4 Y6 a) v  g; f: x" s" r是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?" S3 v# i" V% E/ U
初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-9-5 14:38 , Processed in 0.014231 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表