使用java,本题目标要求从按键盘输入多个数字存在于列表(ArrayList)中,并输入其中最大价值及其在数组中的搜索号码 输入格式: 输入多个整数,个数不限。当输入"end"字串时结束输入。 输入格式: 输入列表中的最大数值及其查询引号。比如:最大数值为56,索引号为2。当输入"end"字串时结束输入。若输入了非“end”及非数字的字符串,程序提示"输入了非数字,数字格式转换异常"。若没有输入数字,程序提示"无数据输入输入"。 ##下面给输出3组输入输出样例: 输入样例1: 3 44 2 7 8 end 输入样例1: 最大值为44,搜索号为1 输入样例2: hello world 输入样例2: 输入了非数字,数字格式转换异常无数据输入 输入示例3: 3 44 2 7 8 hello 输入样例3: 输入了非数字,数字格式转换异常 最大值为44,索引号为1
时间: 2024-02-18 15:02:37 浏览: 65
JAVA输入数字(简单版)
下面是实现该功能的Java代码:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
String input = scanner.next();
if (input.equals("end")) {
break;
}
try {
int num = Integer.parseInt(input);
list.add(num);
} catch (NumberFormatException e) {
System.out.println("输入了非数字,数字格式转换异常");
return;
}
}
if (list.isEmpty()) {
System.out.println("无数据输入");
return;
}
int max = list.get(0);
int index = 0;
for (int i = 1; i < list.size(); i++) {
if (list.get(i) > max) {
max = list.get(i);
index = i;
}
}
System.out.printf("最大值为%d,索引号为%d\n", max, index);
}
}
```
代码中使用了Scanner来读取用户输入的数字,并使用ArrayList存储这些数字。如果输入的是非数字的字符串,则会抛出NumberFormatException异常。如果用户没有输入任何数字,则会输出"无数据输入"的提示。如果有输入数字,则会找出其中的最大值和对应的索引号,并输出这些信息。
阅读全文