2013-11-27 2 views
0

В этом примере у меня есть массив:Как хранить несколько значений в массиве в Android?

String[] books = new String[x]; 

Я хотел бы сохранить идентификатор и название в каждом месте:

books[0]=>id:0, title:"book title1" 
books[0]=>id:1, title:"book title2" 
books[0]=>id:2, title:"book title3" 
books[0]=>id:3, title:"book title4" 

Я хочу, чтобы хранить идентификатор, так как он может измениться. Я получаю идентификатор и заголовок из базы данных. Получение информации не является проблемой. Я хочу сохранить его таким образом, так в моих других функций это возвращается, я могу использовать что-то вроде:

btn.setText(regions[i].title) 

Любое предложение о том, как справиться с этим было бы здорово.

+1

Почему бы вам не создать 'Book' класс, который имеет' id' и 'title' в качестве членов класса? – gunar

+0

вы можете использовать хэш-карту где id является ключом –

+1

Использование может использовать 'ArrayList' объектов' Pair '. –

ответ

0

Я думаю, что у вас есть несколько вариантов

  • Используйте HashMap, где вы можете использовать свой id, как ключ и значение title

  • Определение класса и держать id и title в attributes, определяют get and set methods.

Держите objects класса в ArrayList

2

Сделайте одну вещь, сначала создать класс компонента, как BookBean. При этом объявляются два идентификатора переменных и Title. и объявить методы получения и установки (Если и использует затмение и может легко сделать это (Источник -> генерировать методы получения и установку .. опция) , а затем объявить ArrayList для хранения BookBean юдоли от последующего

ArrayList<BookBean> bookArrayList=new ArrayList<BookBean>(); 

    for(int i=0;i<=urSize;i++) 
    { 
    // create a object for BookBean 
    BookBean book =new BookBean(); 
    book.setID("what ever"); 
    book.setTitle("what ever"); 
    bookArrayList.ass(book) 
    } 
2

. лучше использовать Список_массивы с пользовательским классом.

увидеть это

class Book 
{ 
    String id,title; 

    /* Cunstructor to store data */ 
    public Book(String id,String title) 
    { 
     this.id = id; 
     this.title = title; 
    } 
} 

//declare arraylist 
ArrayList<Book> bookList = new ArrayList<Book>(); 
bookList.add("1","book1"); 
bookList.add("2","book2"); 
bookList.add("3","book3"); 
bookList.add("4","book4"); 

btn.setText(bookList.get(i).title) 
+1

Вы имели в виду: bookList.add (новая книга ("1", "book1")); ' – gunar

Смежные вопросы