方法1
(数据类型)(最小值+Mathrandom()(最大值-最小值+1))
例:
(int)(1+Mathrandom()(10-1+1))
从1到10的int型随数
方法2
获得随机数
for (int i=0;i<30;i++)
{Systemoutprintln((int)(1+Mathrandom()10));}
(int)(1+Mathrandom()10)
通过javaMath包的random方法得到1-10的int随机数
公式是:最小值---最大值(整数)的随机数
(类型)最小值+Mathrandom()最大值
方法3
Random ra =new Random();
for (int i=0;i<30;i++)
{Systemoutprintln(ranextInt(10)+1);}
通过javautil包中的Random类的nextInt方法来得到1-10的int随机数
生成0到1之间的任意随机小数:
生成[0,d)区间的随机小数,d为任意正的小数,则只需要将nextDouble方法的返回值乘以d即可。
[n1,n2]
也就是 ranextDouble() (n2-n1)+n1
/
生成一个指定位数的唯一ID
@param digit ID位数
@return 由数字和大写字母组成的ID号
/
public static String genId(int digit)
{
char digits[] =
{
'1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'A', 'B', 'C', 'D', 'E', 'F',
'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
'W', 'X', 'Y', 'Z'
};
String id = "";
for (int i = 0; i < digit; i++)
{
int temp = (new Double(Mathrandom() 997D))intValue() % 36;
id = id + StringvalueOf(digits[temp]);
}
return id;
}
新建一个Mainjava
public class Main
{
MainFrame mainFrame;
public Main()
{
mainFrame = new MainFrame();
mainFramesetSize(300, 200);
mainFramesetVisible(true);
}
public static void main(String[] args)
{
new Main();
}
}
再建一个MainFramejava
import javaxswing;
import javaawt;
import javaxswingborder;
import javaawtevent;
import javautilRandom;
public class MainFrame
extends JFrame
{
JLabel jLabelResult = new JLabel();
Border border1 = BorderFactorycreateBevelBorder(BevelBorderLOWERED,
Colorwhite, Colorwhite, new Color(103, 101, 98),
new Color(148, 145, 140));
JButton jButtonStart = new JButton();
JButton jButtonClear = new JButton();
public MainFrame()
{
thisgetContentPane()setLayout(null);
jLabelResultsetBorder(border1);
jLabelResultsetBounds(new Rectangle(7, 6, 224, 38));
jButtonStartsetBounds(new Rectangle(17, 52, 71, 29));
jButtonStartsetText("开始");
jButtonStartaddActionListener(new MainFrame_jButtonStart_actionAdapter(this));
jButtonClearsetBounds(new Rectangle(128, 52, 71, 29));
jButtonClearsetText("重玩");
jButtonClearaddActionListener(new MainFrame_jButtonClear_actionAdapter(this));
thissetDefaultCloseOperation(JFrameDISPOSE_ON_CLOSE);
thissetTitle("随机数练习");
thisgetContentPane()add(jLabelResult);
thisgetContentPane()add(jButtonStart);
thisgetContentPane()add(jButtonClear);
}
public void jButtonStart_actionPerformed(ActionEvent e)
{
Random ran = new Random(SystemcurrentTimeMillis());
int player1 = rannextInt();
int player2 = rannextInt();
if (player1 > player2)
jLabelResultsetText("player1 获胜");
else if (player2 > player1)
jLabelResultsetText("player2 获胜");
else
jLabelResultsetText("player1 = player2");
}
public void jButtonClear_actionPerformed(ActionEvent e)
{
jLabelResultsetText("");
}
}
class MainFrame_jButtonStart_actionAdapter
implements ActionListener
{
private MainFrame adaptee;
MainFrame_jButtonStart_actionAdapter(MainFrame adaptee)
{
thisadaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adapteejButtonStart_actionPerformed(e);
}
}
class MainFrame_jButtonClear_actionAdapter
implements ActionListener
{
private MainFrame adaptee;
MainFrame_jButtonClear_actionAdapter(MainFrame adaptee)
{
thisadaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adapteejButtonClear_actionPerformed(e);
}
}
运行时把Mainjava设为主类
不明白可发信息问
import javautil;
public class DBAndom {
public static void main(String[] args) {
char t[]=new char[20]; //创建数组
for(int i=0;i<20;i++){
t[i]=(char)(Mathrandom()26+'a');
for(int j=0;j<i;j++){ //循环比较
if(t[j]==t[i]){ //判断 如果重复
i--; //就i-1 从新从i循环
break;
}
}
}
Arrayssort(t); // 排序
for(int i=0;i<tlength;i++){
Systemoutprintln(t[i]);
}
}
}
简单易懂
java产生一个随机8位的数:
StringBuilder str=new StringBuilder();//定义变长字符串Random random=new Random();
//随机生成数字,并添加到字符串
for(int i=0;i<8;i++){
strappend(randomnextInt(10));
}
//将字符串转换为数字并输出
int num=IntegerparseInt(strtoString());
Systemoutprintln(num);
按照你的要求编写的Java程序如下:
public class CCH {public static void main(String[] args) {
int sum=0;
float average;
Systemoutprint("随机列出十个数字是:");
for(int i=0;i<10;i++){
int n=(int)(Mathrandom()100);
sum=sum+n;
Systemoutprint(n+" ");
}
Systemoutprintln();
average=sum/100f;
Systemoutprintln("它们的和为:"+sum);
Systemoutprintln("它们的平均数为"+average);
}
}
运行结果:
随机列出十个数字是:58 45 43 32 58 15 73 73 71 76
它们的和为:544
它们的平均数为544
方法1
(数据类型)(最小值+Mathrandom()(最大值-最小值+1))
例:
(int)(1+Mathrandom()(10-1+1))
从1到10的int型随数
方法2
获得随机数
for (int i=0;i<30;i++)
{Systemoutprintln((int)(1+Mathrandom()10));}
(int)(1+Mathrandom()10)
通过javaMath包的random方法得到1-10的int随机数
公式是:最小值---最大值(整数)的随机数
(类型)最小值+Mathrandom()最大值
方法3
Random ra =new Random();
for (int i=0;i<30;i++)
{Systemoutprintln(ranextInt(10)+1);}
通过javautil包中的Random类的nextInt方法来得到1-10的int随机数
生成0到1之间的任意随机小数:
生成[0,d)区间的随机小数,d为任意正的小数,则只需要将nextDouble方法的返回值乘以d即可。
[n1,n2]
也就是 ranextDouble() (n2-n1)+n1
以上就是关于Java产生随机数的几种方式全部的内容,包括:Java产生随机数的几种方式、随机数用java程序怎么写、java随机数编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)