吹水环节:刚升大二 刚学习JAVA 此前学过C的基础 据说写博客能帮自己复习 还能发现很多有相同经历的人 完 我实在编不下去了 开始吧 之前没写过博客 也不知道代码片怎么用 我就先随便写了 如果有什么不对的地方 你他妈来打我啊 哈哈哈 开玩笑的 有错误就麻烦大家指正指正
1.利用Math.random()方法随机生成一个数
代码1:
public class TestRandom
{
public static void main(String[] args)
{
for(int i=0;i<10;i++)
{
System.out.println(Math.random()); //调用Math.random()方法并将结果打印出来
}
}
}
运行结果1:
E:\my install\Java\blog>javac TestRandom.java
E:\my install\Java\blog>java TestRandom
0.5485366682366308
0.7904994005768577
0.4970279945435516
0.9144940367397362
0.4147505198413496
0.9006801179679089
0.7179267829109559
0.6356377713437282
0.8714924212354369
0.7853288012971491
由运行结果可以知道Math.random()方法是随机生成一个0~1之间的随机double类型的数
2.那么如何随机生成0~10之间的整数呢 显然直接调用该方法生成的是double型的0~1之间的数 那么我们只要将生成的数乘10,然后转化为int类型就行了
代码2:
public class TestRandom
{
public static void main(String[] args)
{
for(int i=0;i<10;i++)
{
//System.out.println((int)Math.random()*10); 注意 这样结果一直是0 这是因为Math.random()生成的数在0-1之间 而0-1之间的double数转化为为int都为0
System.out.println((int)(Math.random()*10)); //所以应该将生成的随机数乘10 再转化为int类型的数
}
}
}
运行结果2:
E:\my install\Java\blog>javac *.java
E:\my install\Java\blog>java TestRandom
9
7
8
1
1
1
4
1
9
0
3.那么问题又来了 如何随机生成12~18之间的随机整数呢 0~1将原下限0加上12就成了新下限 而1要如何变成18呢 因为加的是12 设随机生成的0~1之间的数位ran 则要求生成的随机数为 ran*6+12
代码3:
public class TestRandom
{
public static void main(String[] args)
{
for(int i=0;i<10;i++)
{
System.out.println((int)(Math.random()*6+12)); //设随机生成的0~1之间的数位ran 则要求生成的随机数为 ran*6+12
}
}
}
运行结果3:
E:\my install\Java\blog>javac *.java
E:\my install\Java\blog>java TestRandom
16
13
17
16
16
13
12
14
15
14
4.那么新的问题又来了 如何生成指定的区间里的整数呢?其实,依照上面的例子把数值换成变量就行了。
代码4:
public class TestRandom
{
public static void main(String[] args)
{
int s;
for(int i=0;i<10;i++)
{
s = randomRange(33,99);//随机生成33~99之间的整数
System.out.println(s);
}
}
//获取两个数之间的随机数
public static int randomRange(int start , int end)
{
return((int)(Math.random()*(end - start)+start));
}
}
运行结果4:
E:\my install\Java\blog>javac *.java
E:\my install\Java\blog>java TestRandom
78
44
64
98
82
72
60
50
69
44
PS:卖女孩的小女孩发来贺电。。。