游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1493|回复: 0

J2ME程序开发中随机数字处理全攻略wxh zt

[复制链接]

1367

主题

1993

帖子

2118

积分

金牌会员

Rank: 6Rank: 6

积分
2118
发表于 2006-3-1 21:19:00 | 显示全部楼层 |阅读模式
作者:linyu  出处:BLOG

J2ME和J2SE不同,不能使用Math类的random来生成随机数字,只能使用java.util包的Random类来生成随机数字。
--------------------------------------------------------------------------------

  在程序中生成随机数字,用处比较,如人工智能领域等等,这里对于在J2ME中生成随机数的操作进行一个简单的整理,希望对大家能有帮助。

  J2ME和J2SE不同,不能使用Math类的random来生成随机数字,只能使用java.util包的Random类来生成随机数字。

  1、创建Random类型的对象:

Random random = new Random();
Random random = new Random(10010010);

  以上两种是创建Random对象的方式,第一种使用默认构造方法,和以下的代码作用完全等价:

Random random = new Random(System. currentTimeMillis());
  
  相当与使用当前时间作为种子数字来进行创建。

  第二种方式通过自己来指定种子数字来进行创建。

  大家可以根据需要使用以上两种方式的任一种。

  2、生成随机数字:

  创建好了随机对象以后,我们就可以来生成随机数字了:

  生成随机整数:

int k = random.nextInt();

  生成随机长整数:

long l = random.nextLong();

  3、生成指定范围的数字:

  例如生成0-10之间的随机数字:

int k = random.nextInt();
int j = Math.abs(k % 10);

  首先生成一个随机整数k,然后用k和10取余,最后使用Math类的abs方法取绝对值,获得0-10之间的随机数字。

  获得0-15之间的随机数,类似:

int k = random.nextInt();
int j = Math.abs(k % 15);

  获得10-20之间的随机数字:

int k = random.nextInt();
int j = Math.abs(k % 10) + 10;



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-23 19:54

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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