Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Zufalls Strings erzeugen

Empfohlene Antworten

Hallo Leute, ich möchte mir eine bestimmte Anzahl von Zufallstrings generieren lassen,weiss aber nicht genau wie ich das bewerkstelligen. Zufallszahlen zu generieren ist kein Problem, baer Strings bereiten mir da schon größere Probleme. Kann mir da jemand helfen, vielen dank!!!

Die Strings sollten folgendes aussehen haben:

1. String: 299234diejdjcdcn9843984dji49rd

2. String: 3940349ediodke09340edoieodi030

....

usw...

Gruß

stefan

Hört sich gut an, hast du eventuell auch ein codetechnisches beispiel für mich?

Die Zufallszahlen generiere ich, wie folgt:


public static void generateRandomString(){



		        Random randomNumbergenerator;

		        randomNumbergenerator = new Random();


		        int bereich = 1254734323;

		        int anzahl = 10;

				for(int i=1234; i<=anzahl ; i++)

		            {

		            int index = randomNumbergenerator.nextInt();

		            System.out.println(index);

		            }

		    }


		    public static void getRandomNumber(int anzahl, int bereich) {


		        Random randomgenerator;

		        randomgenerator = new Random();


		        for(int i=1; i<=anzahl; i++)

		        {

		        int index = randomgenerator.nextInt(bereich);

		        System.out.println(index);

		        }

		    }

Die Ausgabe ist folgende:

1

5

7

3

9

7

...

Ich brauche aber längere Zahlen!

12345434

54543433

34343433

....

Wie kann ich das am besten bewerkstelligen?

Andere Idee

du generierst dir eine Zufallszahl zwischen 1 und 36 und nimmst die "BuchstabenPosition" aus dem Alphabet

1 = A

2 = B

3 = C

4 = D

27 = 1

Und gleich um die Frage zu töten 36 deshalb weil ich die Zahlen 0 - 9 mitgenommen habe.

Servus,

einfacher sollte es mit der Klasse java.util.UUID (Java 1.5) gehen.

Peter

servus leute

wie der zufall es will habe ich vor einiger Zeit eine Klasse geschrieben welche genau das gefragte tut.. Nämlich Zufallsstrings einer beliebigen Länge bestehend aus Zahlen, Groß- und Kleinbuchstaben generieren.. hier mal der Code:


import java.util.Random;



public class dng {


	//Konstanten zum definieren ob eine Zahl, ein Großbuchstabe oder ein Kleinbuchstabe erzeugt wird

	private final static int ZAHLEN = 1;

	private final static int UPCASE = 2;

	private final static int LOWCASE = 3;

	//Anfang und Ende der Zahlen in der ASCII-Tabelle

	private final static int ZAHLENSTART = 48;

	private final static int ZAHLENENDE = 57;

	//Anfang und Ende der Großbuchstaben in der ASCII-Tabelle

	private final static int UPCASESTART = 65;

	private final static int UPCASEENDE = 90;

	//Anfang und Ende der Kleinbuchstaben in der ASCII-Tabelle

	private final static int LOWCASESTART = 97;

	private final static int LOWCASEENDE = 122;



	//Methode zum generieren des Zufallsstrings; Benötigt die gewünschte Länge des Strings

	public static String generate(int length){


		String result = "";

		char temp = ' ';

		int choose;

		int start;

		int end;

		Random gen = new Random();


		for(int i = 0; i < length; i++){


			//Erzeugen einer "Zufallszahl" zwischen 1 und 3

			choose = gen.nextInt(3) + 1;


			//Entscheidung ob Zahl, Großbuchstabe oder Kleinbuchstabe erzeugt werden soll

			if(choose == ZAHLEN){

				start = ZAHLENSTART;

				end = ZAHLENENDE - ZAHLENSTART + 1;

			}else if(choose == UPCASE){

				start = UPCASESTART;

				end = UPCASEENDE - UPCASESTART + 1;

			}else if(choose == LOWCASE){

				start = LOWCASESTART;

				end = LOWCASEENDE - LOWCASESTART + 1;

			}else{

				return "Fehler!";

			}


			//Erzeugen einer "Zufallszahl"

			choose = gen.nextInt(end);

			//Verschieben der Zufallszahl in den vorher festgelegten Wertebereich

			//der Zahlen, Großbuchstaben und Kleinbuchstaben, sowie gleichzeitiges

			//casten zu char

			temp = (char)(choose + start);


			//Der zufällig erzeugte Char wird an den Zufallsstring angefügt

			result += temp;

		}


		return result;


	}


}

Ich hoffe mal das hilft :)

Habs auch nochmal schnell kommentiert, damit es wenigstens halbwegs verständlich ist :)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.