-3

Please pardon me if my question is odd as I am novice in java.

I want something like

ArrayList nameLst = nameAgeList.get(0);
ArrayList ageLst = nameAgeList.get(1);

Please let me know if you want any other details.

2 Answers2

1

You can use Jackson's ObjectMapper and parse it like a json:

String input = "[[\"Mayur\",\"Mahesh\",\"Meet\"],[25,27,24]]";
List<List<Object>> list = new ObjectMapper().readValue(input, List.class);
List<String> nameLst = list.get(0).stream().map(i -> (String) i).collect(Collectors.toList());
List<Integer> ageLst = list.get(1).stream().map(i -> (Integer) i).collect(Collectors.toList());
Mustahsan
  • 3,852
  • 1
  • 18
  • 34
0

you can write it in for like that:

ArrayList<ArrayList> finalList = new ArrayList<>();
String[][] stringArray = [["yourString"]["yourString"]];
for(String[] secondArray : stringArray){
    ArrayList<String> stringList = new ArrayList<>();
    for(String string : secondArray){
        stringList.add(string);
    }
    finalList.add(stringList);
}

the finalList is your ans you can write this as method to use it in code easier. like that :

public ArrayList<ArrayList<String>> parseArray(String[][] stringArray){
    ArrayList<ArrayList> finalList = new ArrayList<>();
    for(String[] secondArray : stringArray){
        ArrayList<String> stringList = new ArrayList<>();
        for(String string : secondArray){
            stringList.add(string);
        }
        finalList.add(stringList);
    }
    return finalList;
}

hear you are.