Como puedo hacer introducir una palabra y que me la revuelva
Publicado por Ces (1 intervención) el 15/02/2020 21:43:58
Hola amigos... me podrían decir como puedo hacer para introducir una palabra y que revuelva las letras
Valora esta pregunta


0


import java.util.Scanner;
public class Revolver {public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Introduzca palabra: ");
String palabra = teclado.nextLine();
teclado.close();
//Creamos un array de caracteres de misma longitud que la palabraCharacter[] revuelta = new Character[palabra.length()];
//Recorremos caracteres de la palabra y la colocamos en posiciones al azar del arrayfor (int i = 0; i < palabra.length(); i++) {
/* * Generamos posiciones al azar e intentamos colocar * caracter en el array. Solo se podrá colocar si el * elemento del array está "disponible" (es null). * Si no se puede colocar porque ya existe un caracter, * repetimos el proceso con un nuevo numero al azar hasta * conseguirlo */ boolean colocado = false;while (!colocado) {
int posi = (int)(Math.random() * palabra.length());
if (revuelta[posi] == null) { //Se puede colocar
revuelta[posi] = palabra.charAt(i);
colocado = true; //Esto pondrá fin al bucle
} } } //Finalizado el bucle foro, los caracteres ya debería haberse colocado revueltosSystem.out.println("\nPalabra revuelta:");
for (Character c: revuelta)
System.out.print(c);
}}Introduzca palabra: dinosaurioPalabra revuelta:udosnroiai


List<String> letras = Arrays.asList(palabra.split(""));
Collections.shuffle(letras);
String revueltas = String.join("", letras);

