X-Git-Url: https://git.piment-noir.org/?p=Persons_Comparator.git;a=blobdiff_plain;f=src%2FOrigin.java;h=aa63762a374c74d7592626a4c34c4db0a4e14d1e;hp=6e89fb93e36900638f8ea51dd4728d48d3e047e2;hb=1a2ddb852431259fab5dc522d8caf5b74bb3acd8;hpb=2bb2aa17b6533b2e8d2fc97997ed76bc38b6931d diff --git a/src/Origin.java b/src/Origin.java index 6e89fb9..aa63762 100644 --- a/src/Origin.java +++ b/src/Origin.java @@ -1,14 +1,24 @@ +import java.util.ArrayList; +import java.util.Arrays; + public class Origin implements Comparable { - private String continent; + private String continent = "Unknown"; private String country; + private String continents[] = {"Africa", "Americas", "Asia", "Europe", "Oceania"}; + private String[][] content2DArray = { + {"Mali"}, /* Africa */ + {"United States of America", "Brasil", "Mexico"}, /* Americas */ + {"India"}, /* Asia */ + {"France", "Germany", "United Kingdom", "Belgium", "Norway"} /* Europe */, + {"Australia"} /* Oceania */ + }; Origin() { } Origin(String country) { setCountry(country); - //TODO: properly set the continent from the country. - setContinent("Europe"); + setContinent(this.getContinentFromCountry(country)); } public String getContinent() { @@ -27,6 +37,31 @@ public class Origin implements Comparable { this.country = country; } + public String[] getCountriesArray() { + ArrayList stringArrayList = new ArrayList<>(); + for (int i = 0; i < this.content2DArray.length; i++) { + for (int j = 0; j < this.content2DArray[i].length; j++) { + stringArrayList.add(this.content2DArray[i][j]); + } + } + stringArrayList.sort(String::compareToIgnoreCase); + String[] rtArray = new String[stringArrayList.size()]; + return stringArrayList.toArray(rtArray); + } + + private String getContinentFromCountry(String country) { + int continentKey = -1; + for (int i = 0; i < content2DArray.length; i++) { + if (Arrays.asList(content2DArray[i]).indexOf(country) != -1) { + continentKey = i; + } + } + if (continentKey != -1) + return this.continents[continentKey]; + else + return "Unknown"; + } + @Override public int compareTo(Origin origin) { return 0;