Skip to content

Commit 596209e

Browse files
Gjort ändringar efter feedback
1 parent 2abd229 commit 596209e

File tree

1 file changed

+26
-20
lines changed

1 file changed

+26
-20
lines changed

src/main/java/com/example/Main.java

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ public static void main(String[] args) {
2828
validZones.add("SE3");
2929
validZones.add("SE4");
3030

31+
List<String> validHours = new ArrayList<>();
32+
validHours.add("2h");
33+
validHours.add("4h");
34+
validHours.add("8h");
35+
3136

3237
if (args.length == 0) { helpMe();
3338
}
@@ -78,16 +83,15 @@ public static void main(String[] args) {
7883
}
7984
zon = ElpriserAPI.Prisklass.valueOf(zoneOf.toUpperCase());
8085
List<ElpriserAPI.Elpris> priserIdag = elpriserApi.getPriser(dagensDatum, zon);
81-
if(priserIdag == null) {
82-
System.out.println("Kunde inte hitta några priser");
86+
if(priserIdag.isEmpty()) {
87+
System.out.println("Inga priser hittade för imorgon");
8388
return;
8489
} else {
8590
System.out.println("Dagens priser:");
8691
}
8792
List<ElpriserAPI.Elpris> priserImorgon = elpriserApi.getPriser(tomorrow, zon);
88-
if(priserImorgon == null){
89-
System.out.println("Kunde inte hitta några priser för imorgon");
90-
return;
93+
if(priserImorgon.isEmpty()){
94+
System.out.println("Inga priser för imorgon hittades");
9195
} else {
9296
System.out.println("Morgondagens priser:");
9397
}
@@ -98,15 +102,20 @@ public static void main(String[] args) {
98102
List<ElpriserAPI.Elpris> kombineradeListor = combinedLists(priserIdag,priserImorgon);
99103

100104

105+
101106
int timmar =0;
102107
if (chargingInput != null) {
103-
try {
104-
//när användaren skriver 4h h ersätts med ""
105-
timmar = Integer.parseInt(chargingInput.replace("h", ""));
106-
107-
} catch (NumberFormatException e) {
108-
helpMe(); return;
109-
}
108+
if (!validHours.contains(chargingInput.toLowerCase())) {
109+
System.out.println("Ogiltig charging: " + chargingInput);
110+
helpMe();
111+
return;
112+
}
113+
try {
114+
timmar = Integer.parseInt(chargingInput.toLowerCase().replace("h",""));
115+
} catch (NumberFormatException e) {
116+
helpMe();
117+
return;
118+
}
110119
}
111120

112121
if (timmar > 0) {
@@ -121,7 +130,7 @@ public static void main(String[] args) {
121130
printPriser(kombineradeListor);
122131
priceMinMax(priserIdag);
123132
medelPris(priserIdag);
124-
listWith96Prices(priserIdag);
133+
calculateHourlyAverages(priserIdag);
125134

126135
}
127136

@@ -136,9 +145,7 @@ public static List<ElpriserAPI.Elpris> combinedLists(List<ElpriserAPI.Elpris> pr
136145
public static void chargingWindow (List<ElpriserAPI.Elpris> elpriserLadda, int timmar) {
137146

138147
DateTimeFormatter minuteFormatter = DateTimeFormatter.ofPattern("HH:mm");
139-
NumberFormat newFormat = NumberFormat.getNumberInstance(Locale.of("sv", "SE"));
140-
newFormat.setMaximumFractionDigits(2);
141-
newFormat.setMinimumFractionDigits(1);
148+
142149

143150
if (elpriserLadda == null) {
144151
System.out.println("Inga eller för få timmar för att beräkna laddningsfönster.");
@@ -166,14 +173,13 @@ public static void chargingWindow (List<ElpriserAPI.Elpris> elpriserLadda, int t
166173
String startTid = start.timeStart().format(minuteFormatter);
167174
String slutTid = slut.timeEnd().format(minuteFormatter);
168175
double snittPris = (minSumma/timmar) * 100;
169-
String formateratPris = newFormat.format(snittPris);
176+
String formateratPris = numberFormat.format(snittPris);
170177

171178
System.out.printf("Billigaste laddningsfönster för %dh är kl %s-%s\nMedelpris för fönster: %s öre\n Påbörja laddning %s", timmar, startTid, slutTid, formateratPris, startTid);
172179
}
173180
}
174-
175-
public static void listWith96Prices (List<ElpriserAPI.Elpris> elpriser96) {
176-
181+
//Processar prislistan som får 96 priser
182+
public static void calculateHourlyAverages (List<ElpriserAPI.Elpris> elpriser96) {
177183

178184
//i är 0; så länge i är mindre än storleken på listan; öka i med 4
179185
for (int i = 0; i < elpriser96.size(); i += 4) {

0 commit comments

Comments
 (0)