创建字符动态二维数组,顺序存放输入的n个字符串,然后求出n个字符串的最大值,字符串长度不超过二十
时间: 2024-11-10 18:14:10 浏览: 8
在Java中,你可以使用二维字符数组来存储字符串,并利用`String`类的`length()`方法来获取每个字符串的长度,然后逐个比较找到最大值。以下是简单的步骤:
1. 首先,创建一个指定大小的二维字符数组,例如,假设每次输入最多可以有20个字符,那么每行可以存放一个字符串,你可以这样声明:
```java
char[][] stringArray = new char[20][];
```
2. 然后,使用一个循环来读取用户输入的n个字符串,并将它们添加到数组中:
```java
int n;
Scanner scanner = new Scanner(System.in);
System.out.println("请输入字符串的数量(n):");
n = scanner.nextInt();
for (int i = 0; i < n; i++) {
System.out.print("请输入第" + (i+1) + "个字符串(不超过20个字符):");
String input = scanner.next(); // 或者scanner.nextLine() 如果有多余空格
if (input.length() > 20) {
System.out.println("字符串过长,只接受不超过20个字符的输入");
continue;
}
stringArray[i] = input.toCharArray(); // 转换为字符数组以便存储
}
```
3. 找出最长的字符串(即最大值):
```java
int maxLength = 0;
String longestString = "";
for (char[] row : stringArray) {
int currentLength = row.length;
if (currentLength > maxLength) {
maxLength = currentLength;
longestString = new String(row); // 注意这里要用new String,因为row已经是字符数组了
}
}
```
4. 输出结果:
```java
System.out.println("最长的字符串是:" + longestString);
```
阅读全文