English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java-Code zum Erstellen eines Moduls zur Erzeugung zufälliger Zahlen teilen

Java random number generation is relatively simple, it can be done through

Random rand = new Random(47); 
System.out.println(rand.nextInt()); 

Generated, or it can also be generated as follows:

double d = Math.random(); 

Of course, the former in the code uses a fixed seed47Therefore, the value is the same each time, or it can also be used

Random rand = new Random(); 
System.out.println(rand.nextInt()); 

For the code2Then the random number generated is of type double.

Let's talk about3method, there is a requirement currently to generate4For random numbers, used for generating SMS registration codes, random numbers need to be used, so the following code is used:3To implement this. If the code between them is used, the result may not meet the conditions, so the following method is used to implement it:

//Method 1 
Random rand = new Random();
for (int i = 0; i < 4; i++{
	System.out.print(Math.abs(rand.nextInt() % 10));
}
//Above, random numbers are generated using rand.next, since negative numbers may exist, Math.abs is used to take the absolute value and then modulo is taken.10,erzeugte Ergebnisse in}}10innerhalb 
//Methode zwei 
Random rand = new Random();
for (int i = 0; i < 4; i++{
	System.out.print(rand2.nextInt(10));
}
//Die obigen API erzeugt direkt10innerhalb

Ich habe kürzlich ein JAVA-Random-Number-Modul geschrieben, das verschiedene nützliche Methoden zur Generierung von Zufallszahlen enthält und daher möchte ich es teilen.

Hier gibt es nichts wirklich High-Tech, die Namensgebung der Funktionen ist auch ein Hinweis auf ihre Funktion, daher einfach kommentieren. Fragen können als Kommentare hinterlassen werden.

Quellcode(RandomSet.java):

import java.awt.Color;
import java.util.Collection;
import java.util.Iterator;
import java.util.Random;
public class RandomSet 
{
	static Random random = new Random();
	//erhält eine zufällige Ganzzahl im angegebenen Bereich 
	public static int getRandomNum(int smallistNum, int BiggestNum) 
	 {
		return (Math.abs(random.nextInt()) % (BiggestNum-smallistNum+1))+smallistNum;
	}
	//erhält einen zufälligen Boolean-Wert 
	public static Boolean getRandomBoolean() 
	 {
		return (getRandomNum(0,1) === 1);
	}
	//erhält eine zufällige Zahl im Bereich von 0~1der Gleitkommazahl 
	public static float getRandomFloatIn_1) 
	 {
		return (float) getRandomNum(0,1000)/1000;
	}
	//erhält eine zufällige Farbe 
	public static Color getRandomColor() 
	 {
		float R = (float) getRandomNum(0,255)/255;
		float G = (float) getRandomNum(0,255)/255;
		float B = (float) getRandomNum(0,255)/255;
		return new Color(R, G, B);
	}
	//mit einer bestimmten Wahrscheinlichkeit einen Boolean-Wert zurückgibt 
	public static Boolean getRate(int rate) 
	 {
		if(rate<0 || rate > 100) 
		  {
			return false;
		} else 
		  {
			if(getRandomNum(0,100)<rate) 
			   {
				return true;
			} else 
			   {
				return false;
			}
		}
	}
	//Gibt ein zufälliges Element aus der gegebenen Array zurück 
	public static <T> T getElement(T[] t) 
	 {
		int index = getRandomNum(0,t.length - 1);
		return t[index];
	}
	//Gibt ein zufälliges Element aus der gegebenen Collection zurück 
	public static <T> T getElement(Collection<? extends T> c) 
	 {
		int atmp = getRandomNum(0,c.size()) - 1);
		Iterator<? extends T> iter = c.iterator();
		while(atmp > 0) 
		  {
			atmp--;
			iter.next();
		}
		return iter.next();
	}
}

Zusammenfassung

Das ist der gesamte Inhalt dieses Artikels über die Teile eines zufälligen Nummer-Generierungsmoduls in Java-Programmierung. Ich hoffe, dass es Ihnen weiterhilft. Freunde, die daran interessiert sind, können andere relevante Themen dieser Website weiter lesen. Wenn es Mängel gibt, sind Kommentare willkommen. Vielen Dank für die Unterstützung der Freunde dieser Website!

Erklärung: Der Inhalt dieses Artikels wurde aus dem Internet übernommen und gehört dem jeweiligen Urheber. Der Inhalt wurde von Internetnutzern freiwillig beigesteuert und hochgeladen. Diese Website besitzt keine Eigentumsrechte und hat den Inhalt nicht manuell bearbeitet. Sie übernimmt auch keine rechtlichen Verantwortlichkeiten. Wenn Sie verdächtige urheberrechtliche Inhalte finden, sind Sie herzlich eingeladen, eine E-Mail an notice#w zu senden.3codebox.com (Bitte ersetzen Sie # durch @ beim Senden einer E-Mail, um Missbrauch zu melden. Bitte fügen Sie relevante Beweise bei und wenn nachgeprüft, wird der fragliche Inhalt sofort gelöscht.)

Vermutlich gefällt Ihnen