-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathManageHeight.java
More file actions
61 lines (47 loc) · 1.54 KB
/
ManageHeight.java
File metadata and controls
61 lines (47 loc) · 1.54 KB
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
53
54
55
56
57
58
59
60
61
import java.util.*;
import java.util.stream.*;
public class ManageHeight{
private int[][] gradeHeights = new int[5][];
public static void main(String...args){
final var manageHeight = new ManageHeight();
manageHeight.setData();
manageHeight.printHeight();
manageHeight.printAverage();
}
public void setData(){
this.insert(1, new int[]{170,180,173,175,177});
this.insert(2, new int[]{160,165,167,186 });
this.insert(3, new int[]{158,177,187,176});
this.insert(4, new int[]{173, 182,181});
this.insert(5, new int[]{170,180,165,177,172});
}
private void insert(int grade, int[] heights){
this.gradeHeights[grade - 1] = heights;
}
public void printHeight(){
System.out.println("결과");
IntStream.range(0, gradeHeights.length).forEach(this::printHeight);
}
public void printHeight(int classNo){
var grade = gradeHeights[classNo];
var sb = new StringBuilder();
sb.append(String.format("Class No.:%d", classNo+1 ))
.append("\n")
.append(Arrays.stream(grade).mapToObj(String::valueOf).collect(Collectors.joining("\n")))
.append("\n");
System.out.print(sb);
}
public void printAverage(){
System.out.println("결과");
IntStream.range(0, gradeHeights.length).forEach(this::printAverage);
}
public void printAverage(int classNo){
final var sb = new StringBuilder();
var grade = gradeHeights[classNo];
sb.append(String.format("Class No.:%d", classNo+1 )).append("\n")
.append("Height average:")
.append(Arrays.stream(grade).average().getAsDouble())
.append("\n");
System.out.print(sb);
}
}