In java, I get a response from the server and add values to the data model class like this:
JSONObject jsonObject = new JSONObject(response);
JSONArray jsonArray = jsonObject.getJSONArray("searches");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
SearchHomeModel searchHomeModel = new SearchHomeModel();
searchHomeModel.setWord(jsonObject1.getString("word"));
searchHomeModel.setUrl(jsonObject1.getString("url"));
JSONArray jsonArray1 = new JSONArray(jsonObject1.getString("user"));
for (int j = 0; j < jsonArray1.length(); j++) {
JSONObject jsonObject2 = jsonArray1.getJSONObject(j);
searchHomeModel.setUsername(jsonObject2.getString("username"));
searchHomeModel.setId(jsonObject2.getString("id"));
searchHomeModel.setImage(jsonObject2.getString("image"));
}
arrayList.add(searchHomeModel);
}
So, I switch to the kotlin and when I call my data model class, I should set the value right away.
So, How can I set values in data class from several different places(in 'for' loop JSONArray)?
This is SearchHomeModel class in Java:
public class SearchHomeModel {
private String word, url, username, id, image, country, city, gender, job, age;
public String getWord() {
return word;
}
public void setWord(String word) {
this.word = word;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
And in kotlin:
data class SearchHomeModel(
val word: String,
val url: String,
val username: String,
val id: String,
val image: String,
val country: String,
val city: String,
val gender: String,
val job: String,
val age: String
)
