rand.nextint()

本文介绍Java中使用java.util.Random类生成随机数的方法,重点讲解nextInt(int n)方法,该方法可以生成一个范围在0到n-1之间的随机整数。

rand.nextint()

  学习
专业回答
2008-07-31 14:42
自从JDK最初版本发布起,我们就可以使用java.util.Random类产生随机数了。在JDK1.2中,Random类有了一个名为nextInt()的方法:
public int nextInt(int n)
给定一个参数n,nextInt(n)将返回一个大于等于0小于n的随机数,即:0 <= nextInt(n) < n。
Random rand = new Random(12345); // 1. 初始化材质 String[] caizhiNames = {"千和板", "桃花心", "杉木"}; for (String name : caizhiNames) { Caizhi caizhi = new Caizhi(); caizhi.setId(caizhis.size() + 1); caizhi.setName(name); caizhis.add(caizhi); } // 2. 初始化木皮 for (int i = 0; i < 3; i++) { Mupi mupi = new Mupi(); mupi.setId(mupis.size() + 1); mupi.setName("木皮-" + (i+1)); mupi.setYou(i % 2 == 0); mupis.add(mupi); } // 3. 初始化板材 for (int i = 0; i < 5; i++) { Bancai bancai = new Bancai(); bancai.setId(bancais.size() + 1); bancai.setCaizhi(caizhis.get(rand.nextInt(caizhis.size()))); bancai.setMupi1(mupis.get(rand.nextInt(mupis.size()))); bancai.setMupi2(mupis.get(rand.nextInt(mupis.size()))); bancai.setHoudu(rand.nextDouble() * 10.0); bancais.add(bancai); } // 4. 初始化组件 for (int i = 0; i < 5; i++) { Zujian zujian = new Zujian(); zujian.setId(zujians.size() + 1); zujian.setName("组件-" + (i+1)); zujians.add(zujian); } // 5. 初始化产品 String[] chanpinNames = {"衣柜", "书桌", "床头柜"}; for (int i = 0; i < 3; i++) { Chanpin chanpin = new Chanpin(); chanpin.setId(chanpins.size() + 1); chanpin.setName(chanpinNames[i]); chanpin.setZujians(new ArrayList<>()); chanpins.add(chanpin); } // 6. 关联产品和组件 for (int i = 0; i < 8; i++) { Chanpin_Zujian cz = new Chanpin_Zujian(); cz.setId(chanpinZujians.size() + 1); // 随机关联产品和组件 Chanpin randomChanpin = chanpins.get(rand.nextInt(chanpins.size())); Zujian randomZujian = zujians.get(rand.nextInt(zujians.size())); cz.setChanpin(randomChanpin); cz.setZujian(randomZujian); cz.setOne_several(rand.nextDouble() * 5); cz.setBancai(bancais.get(rand.nextInt(bancais.size()))); // 双向绑定 randomChanpin.getZujians().add(cz); chanpinZujians.add(cz); } // 7. 初始化订单 for (int i = 0; i < 3; i++) { Dingdan dingdan = new Dingdan(); dingdan.setId(dingdans.size() + 1); dingdan.setNumber("DD" + (1000 + i)); dingdan.setChanpins(new ArrayList<>()); dingdans.add(dingdan); } // 8. 关联订单和产品 for (int i = 0; i < 5; i++) { Dingdan_Chanpin dc = new Dingdan_Chanpin(); dc.setId(dingdanChanpins.size() + 1); // 随机关联订单和产品 Dingdan randomDingdan = dingdans.get(rand.nextInt(dingdans.size())); Chanpin randomChanpin = chanpins.get(rand.nextInt(chanpins.size())); dc.setDingdan(randomDingdan); dc.setChanpin(randomChanpin); dc.setShuliang(rand.nextInt(10) + 1); // 1-10个 // 双向绑定 randomDingdan.getChanpins().add(dc); dingdanChanpins.add(dc); } // 9. 关联订单和板材 for (int i = 0; i < 10; i++) { Dingdan_Bancai db = new Dingdan_Bancai(); db.setId(dingdanBancais.size() + 1); Dingdan randomDingdan = dingdans.get(rand.nextInt(dingdans.size())); Bancai randomBancai = bancais.get(rand.nextInt(bancais.size())); db.setDingdian(randomDingdan); db.setBancai(randomBancai); db.setShuliang(rand.nextInt(50) + 10); // 10-60个 db.setZujian(chanpinZujians.get(rand.nextInt(chanpinZujians.size()))); dingdanBancais.add(db); } // 10. 初始化库存 for (Bancai b : bancais) { Kucun kc = new Kucun(); kc.setId(kucuns.size() + 1); kc.setBancai(b); kc.setShuliang(rand.nextInt(200) + 100); // 100-300库存 kucuns.add(kc); } // 11. 初始化用户 String[] userNames = {"admin", "manager", "worker"}; for (int i = 0; i < 3; i++) { User user = new User(); user.setId(users.size() + 1); user.setName(userNames[i]); user.setAndy("user" + (i+1)); user.setPass("pass" + (i+1)); user.setRole(i); // 0-admin,1-manager,2-worker users.add(user); }
最新发布
06-08
/* ========== Dingdan_Chanpin.java ========== */ package com.example.kucun2.entity; /** * 订单产品关联 */ public class Dingdan_Chanpin { private Integer id; private Dingdan dingdan; private Chanpin chanpin; private Integer shuliang; public Integer getShuliang() { return shuliang; } public void setShuliang(Integer shuliang) { this.shuliang = shuliang; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Dingdan getDingdan() { return dingdan; } public void setDingdan(Dingdan dingdan) { this.dingdan = dingdan; } public Chanpin getChanpin() { return chanpin; } public void setChanpin(Chanpin chanpin) { this.chanpin = chanpin; } public Dingdan_Chanpin() { } } /* ========== Information.java ========== */ package com.example.kucun2.entity; import android.annotation.SuppressLint; import androidx.annotation.Keep; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; @Keep // 防止Proguard混淆 public class Information<T> { private Integer status; private String text; private T data; // 使用泛型保证类型安全 private static final Gson gson = new Gson(); // Gson实例复用 // 构造方法 public Information(Integer status, String text, T data) { this.status = status; this.text = text; this.data = data; } // JSON反序列化构造方法 @SuppressLint("NewApi") public Information(Integer status, String text, String jsonData, Type dataType) { this.status = status; this.text = text; try { this.data = gson.fromJson(jsonData, dataType); } catch (JsonSyntaxException e) { this.data = null; // 处理解析失败 } } // 空构造方法 public Information() {} // 序列化为JSON public String toJson() { return gson.toJson(this); } // 静态创建方法 public static <T> Information<T> newSuccess(T data) { return new Information<>(200, "success", data); } public static Information<String> newSuccess(String text) { return new Information<>(200, "success", text); } public static <T> Information<T> newFail(int status, String text, T data) { return new Information<>(status, text, data); } // Getter/Setter public Integer getStatus() { return status; } public void setStatus(Integer status) { this.status = status; } public String getText() { return text; } public void setText(String text) { this.text = text; } public T getData() { return data; } public void setData(T data) { this.data = data; } } /* ========== Kucun.java ========== */ package com.example.kucun2.entity; /** * 库存 */ public class Kucun { private Integer id; private Integer shuliang; private Bancai bancai; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getShuliang() { return shuliang; } public void setShuliang(Integer shuliang) { this.shuliang = shuliang; } public Bancai getBancai() { return bancai; } public void setBancai(Bancai bancai) { this.bancai = bancai; } public Kucun() { } public Kucun(Integer id, Integer shuliang, Bancai bancai) { this.id = id; this.shuliang = shuliang; this.bancai = bancai; } } /* ========== Mupi.java ========== */ package com.example.kucun2.entity; import java.util.List; public class Mupi { private Integer id; private String name; private Boolean you; public Boolean getYou() { return you; } public void setYou(Boolean you) { this.you = you; } private List<Bancai> bancais; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<Bancai> getBancais() { return bancais; } public void setBancais(List<Bancai> bancais) { this.bancais = bancais; } public Mupi() { } public Mupi(Integer id, String name, List<Bancai> bancais) { this.id = id; this.name = name; this.bancais = bancais; } } /* ========== User.java ========== */ package com.example.kucun2.entity; /** * 用户 */ public class User { private Integer id; private String name; private String andy; private String pass; private Integer role; public int getId() { return id; } public String getName() { return name; } public String getAndy() { return andy; } public String getPass() { return pass; } public int getRole() { return role; } public void setId(int id) { this.id = id; } public void setName(String name) { this.name = name; } public void setAndy(String andy) { this.andy = andy; } public void setPass(String pass) { this.pass = pass; } public void setRole(int role) { this.role = role; } public User(int id, String name, String andy, String pass, int role) { this.id = id; this.name = name; this.andy = andy; this.pass = pass; this.role = role; } public User() { } @Override public String toString() { StringBuilder sb = new StringBuilder("{"); // 处理属性名 sb.append("\"id\": "); // 处理不同数据类型 // 其他对象类型 sb.append((id != null) ? id : "null"); sb.append(","); // 处理属性名 sb.append("\"name\": "); // 处理不同数据类型 // 字符串类型处理(含转义) sb.append("\"") .append(name .replace("\\", "\\\\") .replace("\"", "\\\"") .replace("\b", "\\b") .replace("\f", "\\f") .replace("\n", "\\n") .replace("\r", "\\r") .replace("\t", "\\t")) .append("\""); sb.append(","); // 处理属性名 sb.append("\"andy\": "); // 处理不同数据类型 // 字符串类型处理(含转义) sb.append("\"") .append(andy .replace("\\", "\\\\") .replace("\"", "\\\"") .replace("\b", "\\b") .replace("\f", "\\f") .replace("\n", "\\n") .replace("\r", "\\r") .replace("\t", "\\t")) .append("\""); sb.append(","); // 处理属性名 sb.append("\"pass\": "); // 处理不同数据类型 // 字符串类型处理(含转义) sb.append("\"") .append(pass .replace("\\", "\\\\") .replace("\"", "\\\"") .replace("\b", "\\b") .replace("\f", "\\f") .replace("\n", "\\n") .replace("\r", "\\r") .replace("\t", "\\t")) .append("\""); sb.append(","); // 处理属性名 sb.append("\"role\": "); // 处理不同数据类型 // 其他对象类型 sb.append((role != null) ? role : "null"); sb.append("}"); return sb.toString(); } } /* ========== Zujian.java ========== */ package com.example.kucun2.entity; /** * 组件 */ public class Zujian { private Integer id; private String name; public Zujian() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } /* ========== Bancai.java ========== */ package com.example.kucun2.entity; //板材 public class Bancai { private Integer id; private Caizhi caizhi; private Mupi mupi1; private Mupi mupi2; private Double houdu; public Bancai() { } public Bancai(Integer id, Caizhi caizhi, Mupi mupi1, Mupi mupi2, Double houdu) { this.id = id; this.caizhi = caizhi; this.mupi1 = mupi1; this.mupi2 = mupi2; this.houdu = houdu; } public Integer getId() { return id; } public Caizhi getCaizhi() { return caizhi; } public Mupi getMupi1() { return mupi1; } public Mupi getMupi2() { return mupi2; } public Double getHoudu() { return houdu; } public void setId(Integer id) { this.id = id; } public void setCaizhi(Caizhi caizhi) { this.caizhi = caizhi; } public void setMupi1(Mupi mupi1) { this.mupi1 = mupi1; } public void setMupi2(Mupi mupi2) { this.mupi2 = mupi2; } public void setHoudu(Double houdu) { this.houdu = houdu; } } /* ========== Caizhi.java ========== */ package com.example.kucun2.entity; import java.util.List; //材质 public class Caizhi { private Integer id; private String name; private List<Bancai> bancais; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<Bancai> getBancais() { return bancais; } public void setBancais(List<Bancai> bancais) { this.bancais = bancais; } public Caizhi() { } public Caizhi(Integer id, String name, List<Bancai> bancais) { this.id = id; this.name = name; this.bancais = bancais; } } /* ========== Chanpin.java ========== */ package com.example.kucun2.entity; import java.util.List; //产品 public class Chanpin { private Integer id; private String name; private List<Chanpin_Zujian> zujians; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<Chanpin_Zujian> getZujians() { return zujians; } public void setZujians(List<Chanpin_Zujian> zujians) { this.zujians = zujians; } public Chanpin() { } } /* ========== Chanpin_Zujian.java ========== */ package com.example.kucun2.entity; //产品组件关联 public class Chanpin_Zujian { private Integer id; private Chanpin chanpin; private Zujian zujian ; private Double one_several; private Bancai bancai; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Chanpin getChanpin() { return chanpin; } public void setChanpin(Chanpin chanpin) { this.chanpin = chanpin; } public Zujian getZujian() { return zujian; } public void setZujian(Zujian zujian) { this.zujian = zujian; } public Double getOne_several() { return one_several; } public void setOne_several(Double one_several) { this.one_several = one_several; } public Bancai getBancai() { return bancai; } public void setBancai(Bancai bancai) { this.bancai = bancai; } public Chanpin_Zujian() { } } /* ========== Dingdan.java ========== */ package com.example.kucun2.entity; import java.util.List; /** * 订单 */ public class Dingdan { private Integer id; private String number; private List<Dingdan_Chanpin> chanpins; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; } public List<Dingdan_Chanpin> getChanpins() { return chanpins; } public void setChanpins(List<Dingdan_Chanpin> chanpins) { this.chanpins = chanpins; } public Dingdan() { } } /* ========== Dingdan_Bancai.java ========== */ package com.example.kucun2.entity; /**、 * 订单板材关联 */ public class Dingdan_Bancai { private Integer id; private Dingdan dingdian; private Chanpin_Zujian zujian; private Bancai bancai; private Integer shuliang; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Dingdan getDingdian() { return dingdian; } public void setDingdian(Dingdan dingdian) { this.dingdian = dingdian; } public Chanpin_Zujian getZujian() { return zujian; } public void setZujian(Chanpin_Zujian zujian) { this.zujian = zujian; } public Bancai getBancai() { return bancai; } public void setBancai(Bancai bancai) { this.bancai = bancai; } public Integer getShuliang() { return shuliang; } public void setShuliang(Integer shuliang) { this.shuliang = shuliang; } public Dingdan_Bancai() { } } /* ========== Data.java ========== */ package com.example.kucun2.entity.data; import com.example.kucun2.entity.Bancai; import com.example.kucun2.entity.Caizhi; import com.example.kucun2.entity.Chanpin; import com.example.kucun2.entity.Chanpin_Zujian; import com.example.kucun2.entity.Dingdan; import com.example.kucun2.entity.Dingdan_Bancai; import com.example.kucun2.entity.Dingdan_Chanpin; import com.example.kucun2.entity.Kucun; import com.example.kucun2.entity.Mupi; import com.example.kucun2.entity.User; import com.example.kucun2.entity.Zujian; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Random; /** * 虚拟数据开发阶段使用,之后转api */ public class Data { public final static List<Bancai> bancais = new ArrayList<>(); public final static List<Caizhi> caizhis = new ArrayList<>(); public final static List<Mupi> mupis = new ArrayList<>(); public final static List<Chanpin> chanpins = new ArrayList<>(); public final static List<Chanpin_Zujian> chanpinZujians = new ArrayList<>(); public final static List<Dingdan> dingdans = new ArrayList<>(); public final static List<Dingdan_Chanpin> dingdanChanpins = new ArrayList<>(); public final static List<Dingdan_Bancai> dingdanBancais = new ArrayList<>(); public final static List<Kucun> kucuns = new ArrayList<>(); public final static List<Zujian> zujians = new ArrayList<>(); public final static List<User> users = new ArrayList<>(); static{ String[] names={"千和板","桃花心","杉木"}; for (String name:names) { Caizhi caizhi=new Caizhi(); caizhi.setId(caizhis.size()); caizhi.setName(name); caizhis.add(caizhi); Mupi mupi =new Mupi(); mupi.setId(mupis.size()); mupi.setName(name); mupi.setYou(mupis.size()%2==0); mupis.add(mupi); } Random rand = new Random(3); int randomInt = rand.nextInt(100); for(int i=0;i<3;i++){ bancais.add( new Bancai(i,caizhis.get(rand.nextInt()),mupis.get(rand.nextInt()),mupis.get(rand.nextInt()),rand.nextDouble())); } for(int i=0;i<3;i++){ Chanpin chanpin=new Chanpin(); chanpin.setId(i); chanpin.setName(""+rand.nextDouble()); chanpin.setZujians(new ArrayList<>()); chanpins.add( chanpin); } for(int i=0;i<3;i++){ Zujian zujian=new Zujian(); zujian.setId(i); zujian.setName(""+rand.nextDouble()); zujians.add( zujian); } for(int i=0;i<3;i++){ Chanpin_Zujian zujian=new Chanpin_Zujian(); zujian.setId(i); zujian.setBancai(bancais.get(rand.nextInt())); zujian.setZujian(zujians.get(rand.nextInt())); Chanpin chanpin=chanpins.get(rand.nextInt()); zujian.setChanpin(chanpin); chanpin.getZujians().add(zujian); chanpinZujians.add( zujian); } for(int i=0;i<3;i++){ Dingdan zujian=new Dingdan(); zujian.setId(i); zujian.setNumber(""+rand.nextDouble()); zujian.setChanpins(new ArrayList<>()); dingdans.add( zujian); } for(int i=0;i<3;i++){ Dingdan_Chanpin zujian=new Dingdan_Chanpin(); zujian.setId(i); zujian.setDingdan(dingdans.get(rand.nextInt())); Chanpin chanpin=chanpins.get(rand.nextInt()); zujian.setChanpin(chanpin); dingdanChanpins.add( zujian); } for(int i=0;i<3;i++){ Dingdan_Bancai zujian=new Dingdan_Bancai(); zujian.setId(i); zujian.setBancai(bancais.get(rand.nextInt())); zujian.setZujian(chanpinZujians.get(rand.nextInt())); zujian.setDingdian(dingdans.get(rand.nextInt())); dingdanBancais.add( zujian); } for(int i=0;i<3;i++){ Kucun zujian=new Kucun(); zujian.setId(i); zujian.setBancai(bancais.get(rand.nextInt())); zujian.setShuliang(i*10); kucuns.add( zujian); } for(int i=0;i<3;i++){ User zujian=new User(); zujian.setId(i); zujian.setName(""+rand.nextDouble()); zujian.setAndy(""+i*10); zujian.setPass(""+i*10); zujian.setRole(i); users.add( zujian); } } public static void main(String[] args) { } } 虚拟数据是否有误
06-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值