设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4112|回复: 0

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

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中! q  e+ G9 g: d, g9 n
public void spreadMoney(int money){8 t# S; V; Z' f  k7 X: J
    // Randomly place money in moneySpace% }, k3 t$ J+ [. K! P$ s8 p
    for(int i = 0; i < money; i++){4 T( V1 S1 F8 X/ m! U' p$ r
) @% B3 [. R* H2 I3 Y5 }
      // Choose coordinates! Z  \& M. _8 q
      int x = (int)(Math.random()*(moneySpace.getSizeX()));( O: T* K' c" k: f% G" E
      int y = (int)(Math.random()*(moneySpace.getSizeY()));
5 q# o" P# g  B  o6 j0 A0 }/ x8 |% o
      // Get the value of the object at those coordinates
, ]$ k6 j+ [& e1 ~3 N* o7 C1 t      int I;
$ V! K$ k: ]. ?7 \5 I- m      if(moneySpace.getObjectAt(x,y)!= null){
1 ]( v8 ?1 ^& u0 s        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();; X7 O6 @3 u7 y8 j' w: y
      }
* n( I/ c* l- [) _' v      else{, {+ i2 g6 s9 {0 ^
        I = 0;
6 o6 A% {, u" k  h5 f& \  n: N      }
9 K8 T' `; B+ w* `      // Replace the Integer object with another one with the new value/ \; p$ q6 r' P
      moneySpace.putObjectAt(x,y,new Integer(I + 1));
2 b& s8 \- u- y# z    }

* }- Y4 \+ D8 _! A# w( O这里面if(moneySpace.getObjectAt(x,y)!= null){
$ N% a. a/ k9 M- X        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
: o+ _" z1 q0 E+ U$ y      }! W9 ]7 s6 ?4 u: E
      else{+ K9 b; F1 a* o2 v2 `4 i) M3 ?; B
        I = 0;
- k: Z; I* a2 g) f8 x$ ]% b/ K; w. L% Y
是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
; {- V! N$ S* z* G1 O9 G% _4 r: I初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-16 22:03 , Processed in 0.016762 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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