
2、编程实现:从键盘输入任意多个整数(以输入任意英文字符结束输入
1个回答
展开全部
下面两个你看一下那个是你需要的。
package playgame;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class GetMaxNum {
public static void main(String[] args) {
getNum();
}
方法1:是把所有输入的内容当做一个字符串,去除该字符串中的数字放到数组中找结果
public static void getMax(){
System.out.println("请输入数列,每个元素之间以“ , ” 分割,输入任意字母结束");
Scanner sc=new Scanner(System.in);
String str1=sc.next();
str1=str1.substring(0, str1.length()-1);
String arr[]=str1.split(","); // 将该 字符串以 (,)分割,并将数据放入数组中。
int arr1[]=new int[arr.length];
for(int i=0;i<arr.length;i++){
arr1[i]=Integer.valueOf(arr[i]);
}
Arrays.sort(arr1);
System.out.println("第三大的数字为:"+arr1[arr1.length-3]);
sc.close();
}
方法2:
public static void getNum(){
System.out.println("输入一串整数:(输入任意字母结束)");
Scanner sc=new Scanner(System.in);
String str=sc.next();
List<Integer> list=new ArrayList<Integer>();
list.add(Integer.valueOf(str));
String str1="[a-zA-Z]";
while(true){
Scanner sc1=new Scanner(System.in);
str=sc1.next();
if(str.matches(str1)){
break;
}
list.add(Integer.valueOf(str));
}
int arr[]=new int[list.size()];
for(int i=0;i<list.size();i++){
arr[i]=list.get(i);
}
Arrays.sort(arr);
sc.close();
System.out.println("第三大的数为:"+arr[arr.length-3]);
}
}
package playgame;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class GetMaxNum {
public static void main(String[] args) {
getNum();
}
方法1:是把所有输入的内容当做一个字符串,去除该字符串中的数字放到数组中找结果
public static void getMax(){
System.out.println("请输入数列,每个元素之间以“ , ” 分割,输入任意字母结束");
Scanner sc=new Scanner(System.in);
String str1=sc.next();
str1=str1.substring(0, str1.length()-1);
String arr[]=str1.split(","); // 将该 字符串以 (,)分割,并将数据放入数组中。
int arr1[]=new int[arr.length];
for(int i=0;i<arr.length;i++){
arr1[i]=Integer.valueOf(arr[i]);
}
Arrays.sort(arr1);
System.out.println("第三大的数字为:"+arr1[arr1.length-3]);
sc.close();
}
方法2:
public static void getNum(){
System.out.println("输入一串整数:(输入任意字母结束)");
Scanner sc=new Scanner(System.in);
String str=sc.next();
List<Integer> list=new ArrayList<Integer>();
list.add(Integer.valueOf(str));
String str1="[a-zA-Z]";
while(true){
Scanner sc1=new Scanner(System.in);
str=sc1.next();
if(str.matches(str1)){
break;
}
list.add(Integer.valueOf(str));
}
int arr[]=new int[list.size()];
for(int i=0;i<list.size();i++){
arr[i]=list.get(i);
}
Arrays.sort(arr);
sc.close();
System.out.println("第三大的数为:"+arr[arr.length-3]);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询