File size: 1,588 Bytes
0284885
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
package Case_package;

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

public class case_demo1 {
    public static void main(String[] args) {
        /*
        键盘录入一些1~100之间的整数,并添加到集合中。
        直到集合中所有数据和超过200为止。
         */

        //1、创建一个集合用来添加整数
        ArrayList<Integer> list = new ArrayList<>();

        //2、键盘录入数据添加到集合中
        while (true) {
            System.out.println("请输入一个整数:");
            Scanner sc = new Scanner(System.in);
            String numStr = sc.nextLine();
            int num = Integer.parseInt(numStr);

            //先把异常数据先进行过滤
            if (num < 1 || num > 100) {
                System.out.println("当前数字不在1~100的范围当中,请重新输入");
                continue;
            }
            //添加到集合中
            //细节:
            //num:基本数据类型
            //集合里面的数据是Integer
            //在添加数据的时候触发了自动装箱
            list.add(num);

            //统计集合中所有的数据和
            int sum = getSum(list);
            if (sum > 200) {
                System.out.println("集合中所有的数据和已经满足要求");
                break;
            }
        }
    }

    private static int getSum(ArrayList<Integer> list) {
        int sum = 0;
        for (int i = 0; i < list.size(); i++) {
            sum += list.get(i);
        }
        return sum;
    }
}