Skip to content

Commit 2827274

Browse files
committed
added print_field_descending_meters_above_sea_level command
1 parent e796a4a commit 2827274

File tree

5 files changed

+63
-31
lines changed

5 files changed

+63
-31
lines changed

lab5/src/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
- [x] make history command
4949
- [x] make sum_of_meters_above_sea_level command
5050
- [ ] make print_descending command
51-
- [ ] make print_field_descending_meters_above_sea_level command
51+
- [x] make print_field_descending_meters_above_sea_level command
5252

5353
#
5454

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package collection.comparators;
2+
3+
import collection.City.City;
4+
5+
import java.util.Comparator;
6+
7+
public class CityComparatorByMetersAboveSeaLevel implements Comparator<City> {
8+
@Override
9+
public int compare(City o1, City o2) {
10+
if (o1 == null) {
11+
if (o2 == null) {
12+
return 0;
13+
} else {
14+
return -1;
15+
}
16+
}
17+
return o1.getMetersAboveSeaLevel().compareTo(o2.getMetersAboveSeaLevel());
18+
}
19+
}

lab5/src/command/CommandManager.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public class CommandManager {
2727
commandMap.put("history", new History());
2828
commandMap.put("sum_of_meters_above_sea_level", new SumOfMetersAboveSeaLevel());
2929
// commandMap.put("print_descending", new PrintDescending());
30-
// commandMap.put("print_field_descending_meters_above_sea_level", new PrintFieldDescendingMetersAboveSeaLevel());
30+
commandMap.put("print_field_descending_meters_above_sea_level", new PrintFieldDescendingMetersAboveSeaLevel());
3131
}
3232

3333
public static HashMap<String, Command> getCommandMap() {

lab5/src/command/commands/PrintFieldAscendingColor.java

-29
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package command.commands;
2+
3+
import collection.City.City;
4+
import collection.comparators.CityComparatorByMetersAboveSeaLevel;
5+
import collectionManagers.CollectionManager;
6+
import command.Command;
7+
8+
import java.util.Comparator;
9+
import java.util.TreeSet;
10+
11+
public class PrintFieldDescendingMetersAboveSeaLevel extends Command {
12+
13+
public PrintFieldDescendingMetersAboveSeaLevel() {
14+
super(false);
15+
}
16+
17+
@Override
18+
public void execute() {
19+
if (checkArgument(getArgument())) {
20+
TreeSet<City> cities2 = new TreeSet<>(new CityComparatorByMetersAboveSeaLevel());
21+
TreeSet<City> cities = CollectionManager.getCityCollection();
22+
for (City city: cities) {
23+
cities2.add(city);
24+
}
25+
26+
for (City city2: cities2) {
27+
System.out.println(city2.getMetersAboveSeaLevel());
28+
}
29+
}
30+
}
31+
32+
@Override
33+
public boolean checkArgument(Object inputArgument) {
34+
if (inputArgument == null)
35+
return true;
36+
else {
37+
System.out.println("Команда print_field_ascending_color не имеет аргументов!");
38+
return false;
39+
}
40+
}
41+
42+
}

0 commit comments

Comments
 (0)