Java 在一个数轴上的多个连续区间内产生随机数

 1 public class Randomer {
 2
 3     public static void main(String[] args) {
 4         Random rand = new Random();
 5         System.out.println(rand.nextInt(3)+1);
 6
 7         int[] a = {1, 1, 1, 1, 4, 4, 4, 5, 5, 7, 7, 7, 9};
 8         int start = 0;
 9         int position;
10         for (int i = 0; i < a.length; i++) {
11             if (a[i] != a[start]) {
12                 position = getRandomBetweenAB(start, i);
13                 System.out.println(position + " : " + a[position]);
14                 start = i;
15             }
16         }
17         position = getRandomBetweenAB(start, a.length);
18         System.out.println(position + " : " + a[position]);
19     }
20
21     private static int getRandomBetweenAB(int a, int b) {
22         Random rand = new Random();
23         return (rand.nextInt(b - a) + a);
24     }
25 }
时间: 2024-11-09 15:11:04

Java 在一个数轴上的多个连续区间内产生随机数的相关文章

阿里巴巴Java开发手册上常规的编程命名总结

阿里巴巴Java开发手册上常规的编程命名总结:1.类名必须驼峰.例子:MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion 2.方法名.参数名.成员变量.局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式.例子:localValue / getHttpMessage() / inputUserId 3.常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长.例子:MAX_STOCK_COUNT

给定数轴上的n个点,求距离最近的两个点的距离

public class MinimumSpacing { //给定平面上的n个点,求距离最近的两个点的距离. //无从下手的话,先分解问题,分解成简单的,逐个分析,然后再合在一起考虑 //这是个2维的数据,那就先降维到1维分析 //先考虑在一条数轴上有n个点,求最近距离的2个点的距离 // // ------*--*------*---*---> //用分治思想处理 // 1.分割 2.处理 3.合并 3个步骤 // // 1.分割: // 将整个数据[先排序]得到数组s,然后将s从中间一份为

Eclipse或MyEclipse没有在java类文件上显示Spring图标的问题

Eclipse或MyEclipse没有在java类文件上显示接口图标的问题解决办法: 前: 后:

java多线程文件上传服务器

描述: (1)jdk自带线程池见 JDK自带线程池配置 (2)此上传文件服务器中上传文件的后缀名通过第一段缓冲字符流传递,此缓冲字符流大小为1024,在文件接收端以1024接收.处理. 1.服务器代码如下(使用jdk自带线程池): 1 /** 2 * 服务器处理多线程问题 3 * 4 * 1.因为服务器是要很多人访问的,因此里面一定要用多线程来处理,不然只能一个人一个人的访问,那还叫Y啥服务器 5 * 6 * 2,拿上面这个文件上传的例子来说,它将每个连接它的用户封装到线程里面去,把用户要执行的

Java 利用FTP上传,下载文件,遍历文件目录

Java实现FTP上传下载文件的工具包有很多,这里我采用Java自带的API,实现FTP上传下载文件.另外JDK1.7以前的版本与其之后版本的API有了较大的改变了. 例如: JDK1.7之前 JDK1.7 ftpClient = new FtpClinet() ftpClient = FtpClient.create(ip) ftpclient.login(user,password) ftpclient.login(user,null,password) ftpclient.binary()

Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象。

Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象. 语法EDIT Object.defineProperty(obj, prop, descriptor) 参数 obj 需要定义属性的对象. prop 需定义或修改的属性的名字. descriptor 将被定义或修改的属性的描述符. 返回值 返回传入函数的对象,即第一个参数obj 描述EDIT 该方法允许精确添加或修改对象的属性.一般情况下,我们为对象添加属性是通过

关于云储存或者百度云的基础问题, 用java/android 实现上传文件到云储存(比如百度云)

============问题描述============ 关于云储存或者百度云的基础问题, 用java/android 实现上传文件到云储存(比如百度云) ============解决方案1============ 参考百度相关api

Java Socket文件上传

客户端: import java.io.FileInputStream; import java.net.Socket; /** * Created by 290248126 on 14-5-11. */ public class Client { public static void main(String[] args) throws Exception { FileInputStream fileInputStream = new FileInputStream("e:/1.png&quo

Java通过ftp上传Linux文件权限问题

背景:Java使用ftp上传文件,此文件允许别的用户去访问.Linux上ftp如下: lftp-3.7.11-4.el5ftp-0.17-35.el5tftp-server-0.49-2 ftp服务器为lftp,可以看到,支持site命令: 所以,我们需要在ftp连接成功后发送命令使用"site umask 022",如下: ftpClient.sendCommand("site umask 022"). 注:权限最高为666,rwrwrw 022代表的是644,r