设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5037|回复: 0

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

[复制链接]
发表于 2009-10-12 09:42:47 | 显示全部楼层 |阅读模式
大家都看过carrydrop的程序吧,里面设置moneyspce时将钱任意分布在空间中& \- |: U  L+ e$ H# R+ G' V( x
public void spreadMoney(int money){
  t# n9 y1 r* l  c- d3 a; o: U% K    // Randomly place money in moneySpace
8 p# b+ R: X  P  \- j    for(int i = 0; i < money; i++){
2 T" D: H1 W; K2 N( w0 W2 R9 J) E$ j; K9 a2 e" e4 h1 Q) I, ]: s
      // Choose coordinates
- O; c6 ?% R8 `% U+ Q      int x = (int)(Math.random()*(moneySpace.getSizeX()));) W- A# I# B. Q" H6 x
      int y = (int)(Math.random()*(moneySpace.getSizeY()));
: c$ N  m+ g9 v$ I& O% c4 U, C
% Q  q" c* M2 \$ a      // Get the value of the object at those coordinates5 [% H) ]- n* [' i# v4 a9 ^( a2 @8 K
      int I;
" N4 }9 [9 }: `      if(moneySpace.getObjectAt(x,y)!= null){
+ \/ {# w, s. ]3 H% r- K2 ~        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();
5 i0 G" \; d% k; T/ ?4 [- ~# c      }# D: i* Z  j# l  `: J: L, l
      else{
( W1 X: S; e5 x5 m# H, m% S        I = 0;
; y# t: A  @/ Y8 P( B$ t: J1 V      }( s* Q; R" k+ k7 F) {
      // Replace the Integer object with another one with the new value" ~( `* C% d+ T* U: O
      moneySpace.putObjectAt(x,y,new Integer(I + 1));6 [2 T* }( M4 _/ o! K% _
    }
6 Y+ g, ]) G9 |( G$ f; q
这里面if(moneySpace.getObjectAt(x,y)!= null){- {; c& _* u( u+ G2 \) k
        I = ((Integer)moneySpace.getObjectAt(x,y)).intValue();6 Z3 N; Z; f0 \3 S3 \: i# t
      }6 e5 ?8 Y  m, k  M' }  x
      else{: c8 E* Y9 O% Z) g
        I = 0;

) c7 f8 `9 t& y: r4 G! T+ A' T4 g是在干什么啊?为什么后面的moneySpace.putObjectAt(x,y,new Integer(I + 1));要用new Integer(I + 1),这都在原来钱的基础上加一啊,我怎么看不出来是随意放置钱财的呢?
2 U0 [. `7 Q; C, N, d/ Z初学者,还请见谅!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-4 21:36 , Processed in 0.012860 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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