键盘录入任意字符串,打乱里面的内容 用Java编写
时间: 2024-04-17 13:26:49 浏览: 100
用java编写 对文字进行打字练习
你可以使用 Java 的 `Random` 类和字符数组来打乱字符串中的内容。下面是一个示例代码:
```java
import java.util.Random;
public class ShuffleString {
public static void main(String[] args) {
// 从键盘录入字符串
String input = "Hello World";
// 将字符串转换为字符数组
char[] charArray = input.toCharArray();
// 打乱字符数组中的内容
shuffleArray(charArray);
// 将打乱后的字符数组转换回字符串
String shuffledString = new String(charArray);
// 输出打乱后的字符串
System.out.println("Shuffled String: " + shuffledString);
}
// 打乱字符数组中的内容
private static void shuffleArray(char[] array) {
Random random = new Random();
for (int i = array.length - 1; i > 0; i--) {
int j = random.nextInt(i + 1);
// 交换 array[i] 和 array[j]
char temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
```
在上面的示例中,我们使用 `toCharArray` 方法将输入的字符串转换为字符数组。然后,我们使用 Fisher-Yates 洗牌算法(也称为 Knuth 洗牌算法)来打乱字符数组中的内容。最后,我们使用 `new String(charArray)` 将打乱后的字符数组转换回字符串,并将其输出。
请注意,这里使用了 `Random` 类来生成随机数,以便随机打乱字符数组中的内容。
阅读全文