Advertisement
thexiv

vectorToMap

Mar 30th, 2019
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.64 KB | None | 0 0
  1.  
  2.     public static LinkedHashMap<String, LinkedHashMap<String, String>> vectorToMap (Vector<String> arl1) {
  3.         LinkedHashMap<String, LinkedHashMap<String,String>> mapping = new LinkedHashMap<>();
  4.         LinkedHashMap<String, String> values = new LinkedHashMap<>();
  5.         Vector<String> depth = new Vector<>();
  6.         String title = "";
  7.         Integer x = 0;
  8.        
  9.         while (x < arl1.size()) {
  10.             if (x + 1 < arl1.size() && arl1.elementAt(x+1) == "," && arl1.elementAt(x) == "}") {
  11.                 if (depth.size() > 0) {
  12.                     mapping.put(depth.lastElement(), values);
  13.                     values.clear();
  14.                 }
  15.                 x++;
  16.             }
  17.             else if (x + 1 < arl1.size() && arl1.elementAt(x).endsWith("=") && arl1.elementAt(x+1) == "{") {
  18.                 String e = arl1.elementAt(x).substring(0, arl1.elementAt(x).length()-1);
  19.                 depth.add(e);
  20.                 x++;
  21.             }
  22.             else if (arl1.elementAt(x).endsWith("=")) {
  23.                 String e = arl1.elementAt(x).substring(0, arl1.elementAt(x).length()-1);
  24.                 title = e;
  25.             }
  26.             else if (arl1.elementAt(x).endsWith(",")) {
  27.                 String e = arl1.elementAt(x).substring(0, arl1.elementAt(x).length()-1);
  28.                 values.put(title, e);
  29.             }
  30.             else if (arl1.elementAt(x) == "}") {
  31.                 if (depth.size() > 0) {
  32.                     mapping.put(depth.lastElement(), values);
  33.                     values.clear();
  34.                 }
  35.             }
  36.             else if (arl1.elementAt(x) == "{") {
  37.                 x++;
  38.             }
  39.             else {
  40.                 values.put(title, arl1.elementAt(x));
  41.             }
  42.            
  43.             x++;
  44.         }
  45.         return mapping;
  46.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement