KaiquanMah commited on
Commit
3eea423
·
verified ·
1 Parent(s): 9ba0818

sum returns int - no need getAsInt()

Browse files
Week 7: Enum, Generic Type, Streams, write to file, class diagram/09B. Sum, Average, Minimum, Maximum+++ ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Write a program that asks the 'user to enter integers'.
2
+ The program stores the numbers in a 'list of integers'.
3
+
4
+ When the user enters the 'number -1', the program execution 'ends',
5
+ and it prints the sum, average, minimum, and maximum of all the numbers entered (before -1).
6
+
7
+
8
+ Use streams to calculate the values!
9
+
10
+
11
+
12
+
13
+ Example execution:
14
+ Enter a number: 1
15
+ Enter a number: 2
16
+ Enter a number: 3
17
+ Enter a number: -1
18
+ Sum: 6
19
+ Average: 2.0
20
+ Minimum: 1
21
+ Maximum: 3
22
+
23
+
24
+
25
+
26
+ import java.util.Random;
27
+ import java.util.ArrayList;
28
+ import java.util.Scanner;
29
+
30
+
31
+
32
+ public class Test {
33
+ public static void main(String[] args) {
34
+ final Random r = new Random();
35
+
36
+
37
+ // ADD
38
+ // USER INPUTS INTEGERS
39
+ ArrayList<Integer> numbers = new ArrayList<>();
40
+ Scanner reader = new Scanner(System.in);
41
+ while (true) {
42
+ System.out.print("Give a number: ");
43
+ int number = Integer.valueOf(reader.nextLine());
44
+
45
+ if (number == -1) {
46
+ break;
47
+ }
48
+ numbers.add(number);
49
+ }
50
+
51
+
52
+ // SUM AVG MIN MAX
53
+ if (!numbers.isEmpty()) {
54
+ // sum() method returns an int, so no need to getAsInt()
55
+ System.out.println("Sum: " + numbers.stream().mapToInt(num -> num).sum());
56
+ System.out.println("Average: " + numbers.stream().mapToInt(num -> num).average().getAsDouble());
57
+ System.out.println("Minimum: " + numbers.stream().mapToInt(num -> num).min().getAsInt());
58
+ System.out.println("Maximum: " + numbers.stream().mapToInt(num -> num).max().getAsInt());
59
+ }
60
+ }
61
+
62
+
63
+
64
+ Test number 1
65
+ Give a number: 2
66
+ Give a number: 3
67
+ Give a number: 4
68
+ Give a number: 5
69
+ Give a number: -1
70
+ Sum: 14
71
+ Average: 3.5
72
+ Minimum: 2
73
+ Maximum: 5
74
+
75
+ Test number 2
76
+ Give a number: 10
77
+ Give a number: 12
78
+ Give a number: 14
79
+ Give a number: 16
80
+ Give a number: -1
81
+ Sum: 52
82
+ Average: 13.0
83
+ Minimum: 10
84
+ Maximum: 16
85
+
86
+ Test number 3
87
+ Give a number: 9
88
+ Give a number: 7
89
+ Give a number: 5
90
+ Give a number: 3
91
+ Give a number: -1
92
+ Sum: 24
93
+ Average: 6.0
94
+ Minimum: 3
95
+ Maximum: 9
96
+
97
+ Test number 4
98
+ Give a number: 100
99
+ Give a number: 103
100
+ Give a number: 107
101
+ Give a number: 99
102
+ Give a number: -1
103
+ Sum: 409
104
+ Average: 102.25
105
+ Minimum: 99
106
+ Maximum: 107
107
+
108
+