2016-04-15 71 views
1

我想在我的名单打印出最大数量..我实现了在Java这个代码..打印出数量最多的ArrayList

import java.util.ArrayList; 
import java.util.Scanner; 

public class Product { 

public static void main(String[] args) { 
    ArrayList<Integer> list = new ArrayList<Integer>(); 
    System.out.println("Enter your number"); 
    Scanner scan = new Scanner(System.in); 
    int n=0; 
    while (n<3) { 
    int num = scan.nextInt(); 
    n++; 
    } 
    int max = Integer.MIN_VALUE; 
    for (int i =0; i<list.size(); i++) { 
     if (list.get(i)>max) { 
      max=list.get(i); 
     } 
    } 

    System.out.println(max); 


     } 
    } 

当我运行这段代码我总是-2147483648在输出.. 我在代码中做了什么错误?

谢谢

+3

因为'list'是空的。你永远不会向它添加元素。 – Tunaki

+0

谢谢你......但我通过使用扫描仪添加号码,因为我实施了 –

+0

你永远不会将项目添加到'list'。 –

回答

3

你做错了什么?

您可以输入数字,但不要将它们存储在ArrayList中。 因此,您的ArrayList始终为空,并且min始终保持为Integer.MIN_VALUE

您需要存储它们。将您的while循环更改为:

while (n<3) { 
    int num = scan.nextInt(); 
    list.add(num); 
    n++; 
} 
+1

哦,我的上帝......谢谢你兄弟:)我错过了这个\t'list.add(num);' –