为了账号安全,请及时绑定邮箱和手机立即绑定

【跪】我想让用户自己输入数组中的元素,怎么办?

这是我的代码,习题中已经给出了7个元素。

***但是我现在,不想用这7个已给元素,我想让用户自己输入元素,输入个数不限,然后计算所有输入元素中的最大值,最小值和平均值。

正在回答

2 回答

package zzz;
import java.util.ArrayList;
import java.util.Scanner;
public class Q1 {

	public static void main(String[] args) {
	       
	    	ArrayList<Integer> Nums = new ArrayList<Integer>();
	        Scanner nums = new Scanner(System.in);
	        int n = -1;
	       
	        //输入数字 输入-1时退出输入
	        while (true) {
	            try {
	            	System.out.println("请输入数字以-1结尾");
	                n = nums.nextInt();
	                if (n == -1) {
	                    break;
	                }
	                Nums.add(n);
	                
	            }
	            catch (Exception e) {
	            }
	        }
	        System.out.println("Number = " + Nums);
	       /* for (int number : Nums) {
	        	   System.out.println("Number = " + Nums);
	        	   }*/
	        Integer NUMS[] = new Integer[Nums.size()];
	            NUMS=Nums.toArray(NUMS);
	         
	        int max = NUMS[0]; // 假定最大值为数组中的第一个元素
		    int min = NUMS[0]; // 假定最小值为数组中的第一个元素
			double sum = 0;// 累加值
			double avg = 0;// 平均值
	        int j=0;
			for (int i = 0; i < NUMS.length; i++) { // 循环遍历数组中的元素
		 
				if (NUMS[i]>=max){
					max=NUMS[i];
				}
		        
				if (NUMS[i]<=min){
					min=NUMS[i];
				}
		      
		        
		        sum=sum+NUMS[i];
		        
		    
		        j++;
		        
				}
		       
		        // 求平均值
		       avg=sum/j;
		        
				System.out.println("数组中的最大值:" + max);
				System.out.println("数组中的最小值:" + min);
				System.out.println("数组中的平均值:" + avg);
	    }

	}
1 回复 有任何疑惑可以回复我~
#1

从零开始抠藕钉

我也是初学者,写的很啰嗦,但测试过能运行且满足要求,一起加油吧
2016-09-03 回复 有任何疑惑可以回复我~

java是静态语言,如果使用数组Arrays的话必须先分配好空间,也就是活确定元素的个数才能运用,想在不确定个数的前提下输入数据可以采用java.util.Vector.

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

【跪】我想让用户自己输入数组中的元素,怎么办?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信