gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
Primer implementacije binarnih stabala sa opstim tipom podataka
[spa2-materijali.git] / Stabla / StabloOpstegTipa / Konverter.java
diff --git a/Stabla/StabloOpstegTipa/Konverter.java b/Stabla/StabloOpstegTipa/Konverter.java
new file mode 100644 (file)
index 0000000..421c1ce
--- /dev/null
@@ -0,0 +1,33 @@
+// Instance ove klase konvertuju string u neki konkretan tip podataka i obratno\r
+// Takodje je dato par gotovih implementacija konvertera\r
+public interface Konverter<T> {\r
+\r
+       public String toString(T element);\r
+       public T fromString(String string);\r
+\r
+       public static Konverter<Integer> INTEGER = new Konverter<Integer>() {\r
+               @Override public String toString(Integer element) { return element == null ? null : element.toString(); }\r
+               @Override public Integer fromString(String string) { return string == null ? null : Integer.parseInt(string); }\r
+       };\r
+\r
+       public static Konverter<Long> LONG = new Konverter<Long>() {\r
+               @Override public String toString(Long element) { return element == null ? null : element.toString(); }\r
+               @Override public Long fromString(String string) { return string == null ? null : Long.parseLong(string); }\r
+       };\r
+\r
+       public static Konverter<Double> DOUBLE = new Konverter<Double>() {\r
+               @Override public String toString(Double element) { return element == null ? null : element.toString(); }\r
+               @Override public Double fromString(String string) { return string == null ? null : Double.parseDouble(string); }\r
+       };\r
+\r
+       public static Konverter<String> STRING = new Konverter<String>() {\r
+               @Override public String toString(String element) { return element; }\r
+               @Override public String fromString(String string) { return string; }\r
+       };\r
+\r
+       public static Konverter<Osoba> OSOBA = new Konverter<Osoba>() {\r
+               @Override public String toString(Osoba element) { return element == null ? null : element.getIme() + " " + element.getPrezime() + " " + element.getGodinaRodjenja(); }\r
+               @Override public Osoba fromString(String string) { if (string == null) return null; else { String[] delovi = string.split(" "); return new Osoba(delovi[0], delovi[1], Integer.parseInt(delovi[2]));} }\r
+       };\r
+       \r
+}\r
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner