Merge branch 'master' of /home/sylvain/IdeaProjects/Persons_Comparator with conflicts.
[Persons_Comparator.git] / src / Origin.java
CommitLineData
1a2ddb85
JB
1import java.util.ArrayList;
2import java.util.Arrays;
3
1c118933 4public class Origin implements Comparable<Origin> {
1a2ddb85 5 private String continent = "Unknown";
97491195 6 private String country;
b4eb694d 7 private String[] continents = {"Africa", "Americas", "Asia", "Europe", "Oceania"};
1a2ddb85
JB
8 private String[][] content2DArray = {
9 {"Mali"}, /* Africa */
10 {"United States of America", "Brasil", "Mexico"}, /* Americas */
11 {"India"}, /* Asia */
7403fee4 12 {"France", "Germany", "United Kingdom", "Belgium", "Norway"}, /* Europe */
1a2ddb85
JB
13 {"Australia"} /* Oceania */
14 };
97491195 15
5bdd2996 16
b974e749
JB
17 Origin() {
18 }
19
20 Origin(String country) {
97491195 21 setCountry(country);
1a2ddb85 22 setContinent(this.getContinentFromCountry(country));
613054ac
JB
23 }
24
25 public String getContinent() {
26 return continent;
27 }
28
29 public void setContinent(String continent) {
30 this.continent = continent;
97491195
JB
31 }
32
33 public String getCountry() {
34 return country;
35 }
36
37 public void setCountry(String country) {
38 this.country = country;
39 }
1c118933 40
1a2ddb85
JB
41 public String[] getCountriesArray() {
42 ArrayList<String> stringArrayList = new ArrayList<>();
43 for (int i = 0; i < this.content2DArray.length; i++) {
44 for (int j = 0; j < this.content2DArray[i].length; j++) {
45 stringArrayList.add(this.content2DArray[i][j]);
46 }
47 }
48 stringArrayList.sort(String::compareToIgnoreCase);
49 String[] rtArray = new String[stringArrayList.size()];
50 return stringArrayList.toArray(rtArray);
51 }
52
c8da8eb7 53 public String getContinentFromCountry(String country) {
1a2ddb85
JB
54 int continentKey = -1;
55 for (int i = 0; i < content2DArray.length; i++) {
56 if (Arrays.asList(content2DArray[i]).indexOf(country) != -1) {
57 continentKey = i;
58 }
59 }
60 if (continentKey != -1)
61 return this.continents[continentKey];
62 else
63 return "Unknown";
64 }
65
1c118933
JB
66 @Override
67 public int compareTo(Origin origin) {
68 return 0;
69 }
97491195 70}