设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4243|回复: 0

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

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中3 T) `1 V) T& N* }
public void spreadMoney(int money){: o. P% @; f1 c
    // Randomly place money in moneySpace
9 h9 E6 M: T3 I, O* o; F1 }    for(int i = 0; i < money; i++){6 w6 ?& v4 E5 @2 A) `; p/ P

: u+ @% D% R8 ^9 n4 L0 U: s/ B  X      // Choose coordinates
, v. P7 |% ^' d& W  u! [9 `      int x = (int)(Math.random()*(moneySpace.getSizeX()));
& D- t/ K2 v) F5 U/ l1 N: Z' n4 ~3 o      int y = (int)(Math.random()*(moneySpace.getSizeY()));
& U# P3 u- n5 I, L
3 m  _$ {# h# l1 g) |: S8 c6 g      // Get the value of the object at those coordinates; A1 }3 R3 ^5 [$ j, m; K
      int I;) s- F& ?2 ~4 m
      if(moneySpace.getObjectAt(x,y)!= null){
0 K% j; G; l) ]/ f5 e4 S        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
3 I( N9 t3 @  w) P  k& k      }
1 }8 N5 U- U- W9 c# z0 u  C      else{2 }- G3 D0 q7 _' j( n, e& J8 w1 Z
        I = 0;3 a! o5 f$ E, E
      }" j# y" b# k0 A7 r* }+ G. b" {
      // Replace the Integer object with another one with the new value
( K3 K6 \0 u& s; x, U      moneySpace.putObjectAt(x,y,new Integer(I + 1));1 a5 O; g) b2 c/ l, M+ V4 n
    }
# I1 Q, W2 O: x) k0 g4 X$ f
这里面if(moneySpace.getObjectAt(x,y)!= null){  z& H$ ~* K' k0 j# m  A- p: q
        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
2 i  z0 s5 ^/ g! k8 E( S! ?      }* T4 R: u& D  t0 O1 i( ?
      else{( c7 Z) S4 h2 ~4 y( M; x
        I = 0;

2 D0 g$ @6 V+ ]0 |- e# J是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?- p+ G+ g8 }1 d
初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-21 23:40 , Processed in 0.022259 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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