Решил попробовать данную БД для работы, но никак не пойму, как вытаскивать оттуда данные. Занести получилось, потом использую:
realm.where(Class.class)findAll();
И получаю строку вида: [Class = [{string1: X}, {string2:Y}], [Class = [{string1: X}, {string2:Y}], [Class = [{string1: X}, {string2:Y}]...
и так до конца всей таблицы. Так вот, как вытащить значения именно string1 или string2, что бы потом занести их в массив и уже работать с ними?
Вот моя модель данных
public class Test extends RealmObject {
private String firstName;
private String secondName;
public String getFirstName(){return firstName;}
public void setFirstName(String x_firstName) {this.firstName= x_firstName;}
public String getSecondName(){return secondName;}
public void setSecondName(String x_secondName) {this.secondName= x_secondName;}
}
Метод findAll() возвращает объект типа RealmResults<E>, В Вашем случае это RealmResults<Test>.
Далее, из RealmResults<Test> Вы можете получать объекты:
RealmResults<Test> tests = realm.where(Test.class).findAll();
Test test = tests.get(0);
И обращаться к содержимому объекта:
String firstName = test.getFirstName();
Когда вы делаете запрос к реалму на предмет сохранённых в нём записей вам надо указывать конкретный класс записи. Т.е. в вашем случае - указать класс Test. В итоге вы получите объект RealmResults<Test>:
RealmResults<Test> tests = realm.where(Test.class).findAll();
далее вы можете работать с результатом как с реализацией List<Test>. Например:
System.out.println(tests.get(0).getFirstName());
public class Test extends RealmObject {
private String firstName;
private String secondName;
public String getFirstName(){return firstName;}
public void setFirstName(String x_firstName) {this.firstName= x_firstName;}
public String getSecondName(){return secondName;}
public void setSecondName(String x_secondName) {this.secondName= x_secondName;}
}
Продвижение своими сайтами как стратегия роста и независимости