设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4381|回复: 0

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

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中
, `: {* E; R# G4 F: Gpublic void spreadMoney(int money){
9 H* U- h. F) x, m. _" y" M2 ?8 e( ^    // Randomly place money in moneySpace8 E# C9 v* i+ C2 q1 w7 ~
    for(int i = 0; i < money; i++){
' N4 {* ?! B, T+ X7 t  c
! m" l2 e$ y. N      // Choose coordinates" o" N* M- O! D6 d, |
      int x = (int)(Math.random()*(moneySpace.getSizeX()));
+ v5 m- m' F" y  ?2 I      int y = (int)(Math.random()*(moneySpace.getSizeY()));% S) B; b; e5 T) E8 v
0 r) Z3 o0 \, B" D+ V
      // Get the value of the object at those coordinates
  E/ L* U# M6 |0 S/ t' U0 _, d3 l% w# b      int I;
' o4 U. J! l6 T, V      if(moneySpace.getObjectAt(x,y)!= null){5 y- n& S; M! Y- j) U# G: ?. t. |
        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();1 J6 f/ J; P( Z* W
      }
! k. ^' U* [7 j      else{. \5 X7 C- K$ H& }5 ~4 R+ N
        I = 0;( Y+ A- m  z5 ?& b
      }
8 n3 n# K8 R4 Z      // Replace the Integer object with another one with the new value6 e/ x& N& X" F( s
      moneySpace.putObjectAt(x,y,new Integer(I + 1));/ a9 z7 `' S# M- _( u
    }

8 h9 \1 B: Y# v- h# h8 B; S# o这里面if(moneySpace.getObjectAt(x,y)!= null){
2 n- c: M/ p' d! `* @3 ?$ w, e1 V        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();3 j2 p  n! E" u- N7 ~9 g/ U3 k/ |
      }
+ i) ?7 V) |& L& s* H7 i1 v2 R/ J6 J      else{
4 F5 c8 [; v& U  s& y        I = 0;

! o& O) J% z: N  f9 v0 C# N1 u是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?0 K% R, O8 M  e1 |$ r
初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 16:51 , Processed in 6.290815 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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