Reputation: 31
Current List
I/flutter ( 5752): END : [
{Heading: Heading2, Subheading: SubHeading1},
{Heading: Heading2, Subheading: SubHeading2},
{Heading: Heading3, Subheading: SubHeading1},
{Heading: Heading3, Subheading: SubHeading2},
{Heading: Heading3, Subheading: SubHeading3},
{Heading: Heading3, Subheading: SubHeading5}
]
I want this list converted into
[
{Heading: Heading2, {Subheading: SubHeading1, Subheading: SubHeading2} },
{Heading: Heading3, {Subheading: SubHeading1, Subheading: SubHeading2, Subheading: SubHeading3, Subheading: SubHeading5}},
]
Is there a way this is possible?
Upvotes: 1
Views: 134
Reputation: 7640
I assume that this data will become a JSON. Then your model will look like this:
class NewModel {
String heading;
List<String> subheading;
NewModel({this.heading, this.subheading});
NewModel.fromJson(Map<String, dynamic> json) {
heading = json['Heading'];
subheading = json['Subheading'].cast<String>();
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['Heading'] = this.heading;
data['Subheading'] = this.subheading;
return data;
}
}
Then your input data will be List<newModel>
. Now the problem becomes easier. Check for each item in your data list and if the headings are same then add group subheadings.
Upvotes: 1