设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4335|回复: 0

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

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中
) J* R* p/ [% G6 D7 qpublic void spreadMoney(int money){
) Z, }8 P- F2 U    // Randomly place money in moneySpace; F$ ]5 ?: S& j# R" c* T
    for(int i = 0; i < money; i++){
  P' b9 q3 {  z. ?* h2 h  [4 I0 x5 p/ u  V
      // Choose coordinates
& L: `" \/ V( }& d' C7 h( i      int x = (int)(Math.random()*(moneySpace.getSizeX()));
9 n5 F' G6 n0 o5 k) V      int y = (int)(Math.random()*(moneySpace.getSizeY()));: U" C0 y' m2 y7 e( f  k
, v( p$ j" n' s  i7 I7 P3 t
      // Get the value of the object at those coordinates
! B) I+ ]4 L- W& T      int I;0 _8 u: C- q8 U+ n
      if(moneySpace.getObjectAt(x,y)!= null){
8 Y- J; ?0 D$ r& K2 \        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
7 G9 t* Z' V& o  x, g( W0 D      }! K0 X: B/ i/ h" F& O; b" `
      else{
7 P, q$ X4 z3 S& S' g) c        I = 0;
3 o2 V9 Z! d! F( r( d      }! G1 ?7 A) P- ^& K. Q
      // Replace the Integer object with another one with the new value
3 Z$ L9 r) ]5 P4 ]      moneySpace.putObjectAt(x,y,new Integer(I + 1));1 J# @7 q1 V" E0 X4 B: B
    }

; F, J7 k$ A$ v这里面if(moneySpace.getObjectAt(x,y)!= null){
; D* m) t! q  Y/ O6 p        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();" Y+ P4 [, b, V; P$ l/ z
      }8 _& F* L7 K' Q
      else{% s, a5 ~( a3 {# `
        I = 0;

& n! H' P; s( S. b  o是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
4 Z7 l# w) ]2 J7 a6 N初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-8 14:57 , Processed in 0.017131 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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