【问题标题】:How do I store multiple values in an array in Android?如何在 Android 的数组中存储多个值?
【发布时间】:2013-12-12 14:03:27
【问题描述】:

对于这个例子,我有一个数组:

String[] books = new String[x];

我想在每个位置存储 id 和 title:

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"

我想存储 id,因为它可能会改变。我正在从数据库中获取 id 和 title。获取信息不是问题。我想以这种方式存储它,所以在我的其他函数中返回我可以使用类似的东西:

btn.setText(regions[i].title)

任何关于如何处理这个问题的建议都会很棒。

【问题讨论】:

  • 为什么不创建一个Book 类,将idtitle 作为类成员?
  • 您可以使用以 id 为键的哈希映射
  • 使用可以使用ArrayListPair<Integer,String>对象..
  • 您可能想了解 OOP 概念和集合,并找出一种非常简单的方法。

标签: android arrays multidimensional-array arraylist


【解决方案1】:

做一件事,首先创建一个像BookBean这样的bean类。 在此声明两个变量 ID 和 Title。并声明getter和setter(如果你使用eclipse你可以很容易地做到这一点(来源->生成getter和setter..选项) 然后声明一个 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】:

    Arraylist 最好与自定义类一起使用。

    看到这个

    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)
    

    【讨论】:

    • 你的意思是:bookList.add(new Book("1","book1"));
    【解决方案3】:

    我认为你有几个选择

    • 使用HashMap,您可以将id 用作键和值title

    • 定义一个类并将idtitle保持为attributes,定义get and set methods

    将班级的objects保存在ArrayList

    【讨论】:

      猜你喜欢
      • 2013-11-08
      • 2021-05-21
      • 2011-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-19
      • 1970-01-01
      相关资源
      最近更新 更多