public int getRandom(){
站在用户的角度思考问题,与客户深入沟通,找到青山网站设计与青山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站建设、成都做网站、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖青山地区。
int a=1,b=2,c=3,returnValue;
java.util.Random r=new java.util.Random();
int ran=r.nextInt(100);
if(ran25){
return a;
}
if(ran60ran=25){
return b;
}
if(ran100ran=60){
return c;
}
return -1;
}
返回-1的情况是因为条件有错误,如果程序没有错的话,是不会返回-1的,只有1,2,3这三个数
随机生成一个小于100的数,那么这个数小于25的概率是25%,大于等于25并且小于60的概率是35%,大于等于60的概率是40%。
希望能对你有所帮助
承接上一个问题, 已经解决了JPanel圆圈的绘制 和颜色的改变了
概率设置问题, 也可以用随即数产生
比如0.015 可以看成是15/1000 . 比如 [0,14]闭区间 一共有15个数字. 只要随即产生的数字是[0,14]间,就可以认为满足条件.
也就是说随即数字范围在[0,1000) 的左闭右开区间内, 只要小于15 就可以改变颜色为红色
源代码里需要修改代码
//产生 1个集合,里面有1和0两种元素,共计10个
private ArrayListInteger getList() {
list.clear();//清空元素
Random r=new Random();
for (int i = 0; i 10; i++) {
if(r.nextInt(1000)15) {//0.015 就是 15/1000 [0~14]共15个数字,在此区间的概率就是0.015
list.add(1);
totalRed+=1;
}else {
list.add(0);
totalGreen+=1;
}
}
return list;
}
import java.io.*;
//类的功能:接收用户输入的数值x,如果x50,就打印输出
public class NumberTest{
public static void main(String[] args) throws IOException{
//定义最大的数(和用户输入的数相比较)
final int MAX_NUM=50;
//字符输入流:用于接收键盘输入
InputStreamReader ir=new InputStreamReader(System.in);
//缓冲流:通过缓冲输入提高性能
BufferedReader in=new BufferedReader(ir);
//输出一行提示信息:Input x is:
System.out.println("Input x is: ");
//把输入的一行信息保存在变量s中
String s=in.readLine();
//再将s转换为整型
int x =Integer.parseInt(s);
//和预先设定的最大值进行比较,如果比它小,就输出接收到的变量值
if(xMAX_NUM){
System.out.println("x = " +x);
}
}
}