`
kidiaoer
  • 浏览: 822322 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

生成随机数 不重复的随机抽取(完美版本)

阅读更多
随机数相关:
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;

public class Test {

	public static void main(String[] args) throws IOException {
		ReadFromFile("0", "1");
	}

	private static void ReadFromFile(String tag1, String tag2)
			throws FileNotFoundException, IOException {
		Properties prop = new Properties();
		List<String> array = new ArrayList<String>();
		InputStream in = new FileInputStream("D:/Ext/Demo/src/test.properties");
		prop.load(in);
		for (int i = 1; i <= prop.size(); i++) {
			String index = prop.getProperty("" + i);
			if (index.endsWith(tag1)) {
				array.add(index);
			}
		}
		if (array.isEmpty()) {
			System.out.println("本次抽取完毕");
		} else {
			int random = (int) ((Math.random() * array.size()) + 1);
			String test = array.get(random - 1);
			for (int i = 1; i <= prop.size(); i++) {
				String index = prop.getProperty("" + i);
				if (index.equals(test)) {
					writeToFile(prop, i, index, tag2);
				}
			}
			System.out.println("中奖者是: " + test.split(tag1)[0]);
		}
	}

	private static String writeToFile(Properties prop, int random, String man,
			String tag2) throws FileNotFoundException, IOException {
		String test;
		String target;
		test = man.substring(0, man.length() - 1);
		target = test + tag2;
		prop.setProperty("" + random, target);
		OutputStream out = new FileOutputStream(
				"D:/Ext/Demo/src/test.properties");
		prop.store(out, "copyright by diaoer");
		out.close();
		return test;
	}

}


分享到:
评论

相关推荐

    生成指定随机数不重复的例子(可用)

    在编程领域,生成指定范围内的随机数而不重复是一项常见的需求,尤其在抽奖系统、密码生成或者数据模拟等场景。这个例子以Java语言为基础,提供了一种解决方案,可以在myEclipse集成开发环境中直接运行。下面我们将...

    易语言取随机数不重复

    在编程领域,尤其是在易语言中,取随机数不重复是一个常见的需求,比如在制作抽奖程序、模拟随机事件或者填充无重复数据的数组时。本文将深入探讨如何在易语言中实现这一功能,并提供相关的源码解析。 易语言,全称...

    unity 随机数不重复出现

    ### Unity随机数不重复出现知识点详解 在Unity游戏开发中,随机数的生成是一个非常常见的需求,尤其是在设计一些需要概率事件或随机元素的游戏时。然而,有时候我们需要确保生成的随机数在一定范围内不会重复出现,...

    易语言取不重复随机数

    综上所述,易语言取不重复随机数的核心在于如何保证生成的随机数不重复,可以通过数组或模拟集合的方式来实现这一目标。通过理解并掌握这两种方法,开发者可以在易语言中有效地生成满足特定需求的不重复随机数序列。

    VB生成不重复的随机数

    此技术常用于各种场景,比如彩票系统、抽奖程序或需要无重复随机选择的应用。 ### 一、基本原理 生成不重复的随机数主要涉及两个关键步骤: 1. **创建一个有序序列**:首先准备一个包含所有可能数字的数组。 2. **...

    VBA生成不重复的随机数源码.txt

    VBA生成不重复的随机数源码.txt

    易语言取随机数不重复源码

    本资源提供的“易语言取随机数不重复源码”就是针对这一需求的一个实例程序。 易语言的语法结构简洁明了,它的核心概念是“易”字,即易于理解和编写。在取随机数不重复的源码中,主要涉及到以下几个关键知识点: ...

    生成随机数 免费 网页版

    在编程中,生成随机数通常依赖于特定的库或函数,例如在JavaScript中,我们可以使用Math.random()方法来生成0到1之间(包括0,但不包括1)的随机浮点数。 描述中的网页版随机数生成器提供了用户自定义生成随机数的...

    java生成十个不重复的随机数

    在Java编程中,生成十个不重复的随机数是一项常见的任务,尤其在进行数据模拟、测试或者游戏设计等场景。要实现这个功能,我们需要利用到Java的集合框架和Math类中的随机数生成方法。下面我们将详细讲解如何实现这个...

    连续生成大量随机数(不重复)

    通过循环创建随机种子来循环生成随机数,避免了重复调用Random的Next方法产生重复随机数的问题,程序里可设置文件的保存路径和产生的随机数长度

    基于DSP的线性同余法生成随机数的头文件 可以轻松调用 已经在CCS上调试通过

    3. 质量检查:虽然线性同余法可以生成近似随机的序列,但这些序列本质上是伪随机的,因此在关键应用中,我们需要对生成的随机数进行统计测试,如Diehard测试或NIST SP 800-22测试,以确保它们满足随机性的要求。...

    生成随机数小程序

    首先,随机数生成器的核心功能是生成具有随机性的数字。在计算机中,由于硬件和算法的限制,真正的“随机”其实是伪随机,即通过一定的算法生成一系列看似随机但实际上可预测的数字序列。这个小程序很可能是基于某种...

    java根据比例概率生成随机数

    Java 根据比例概率生成随机数 概率随机数是指根据事先设定的概率分布生成随机数的方法。在 Java 中,可以使用 Math.random() 方法生成随机数,然后根据概率分布判断返回的数字。 在给定的代码中,作者定义了一个 ...

    S7-300生成随机数.rar

    生成随机数在工业控制中有多种用途,例如模拟真实世界的不确定性、进行测试与调试、或者在一些随机化决策过程中。在S7-300中,生成随机数通常通过编程实现,使用的是SIMATIC Step 7编程软件,它支持IEC 61131-3标准...

    VB.NET生成不重复的随机数

    3. 循环和条件判断语句的使用来确保生成的随机数不重复。 4. 如何根据实际需求调整随机数的范围和数量。 通过以上讨论,你应该能理解如何在VB.NET中实现不重复随机数的生成,并可以根据实际项目需求进行相应的调整...

    根据pdf或cdf生成随机数:根据用户定义的概率密度函数(pdf)或累积分布 函数(cdf)生成随机数- -mat lab开发

    根据pdf或cdf生成随机数:根据用户定义的概率密度函数(pdf)或累积分布 函数(cdf)生成随机数- -mat lab开发 句法y = randdf(S,D,F) S - 维度的大小,整数值。 示例:S=10 创建一个 10×1 数组示例:S=[10,2] 创建一个...

    excel随机数抽取

    如果需要确保随机数不重复,可以使用Excel的“随机排序”功能。首先,将所有可能的数值放在一列中,然后选择该列,点击“数据”菜单中的“排序”,在弹出窗口中选择“随机排序”。 六、随机抽样 Excel的“抽样”...

    随机产生8位无重复数

    2. **去除重复**:为了确保生成的随机数不重复,可以使用HashSet或数据库来存储已经生成过的随机数,每次生成新数时,都会先检查该数是否已存在,如果不存在则添加并返回,否则继续生成新的随机数。 3. **数据库...

    C#产生不重复的随机数

    第二种方法采用了哈希表(`Hashtable`)来确保生成的随机数不重复。步骤如下: 1. 创建一个`Hashtable`实例。 2. 在循环中,使用`Random`类生成随机数,并检查该数是否已存在于哈希表中。 3. 如果随机数不存在于...

    逆变换法生成随机数-Python实现

    使用逆变换法生成随机数: 题目:随机变量X的分布密度为p(x)=1/2+x,x∈[0,1]

Global site tag (gtag.js) - Google Analytics