【问题标题】:Adding data to an array list将数据添加到数组列表
【发布时间】:2012-12-02 14:53:00
【问题描述】:

我正在开发一个 Android 项目,我正在尝试使用 ArrayList,它的类型为 MyClass。我正在尝试将ArrayList 中的数据存储到MyClass 中的每个变量中。下面是我正在使用的代码。

下面是带有将要使用的变量的类。

class SearchData
{
    public int id;
    public String category;
    public String company;
    public String loginAction;
    public String username;
    public String password;
    public String type;
    public String appName;
}

下面是我如何初始化ArrayList

ArrayList<SearchData> passwords = new ArrayList<SearchData>();

下面是我尝试向ArrayList添加新数据的方式

passwords.add(new SearchData()
{

});

我不知道如何在类中使用我需要设置的数据来设置变量。在我比 Java 更了解的 C# 中,我可以执行以下操作:

passwords.add(new SearchData()
{
    id = 0,
    category = "hello"                      
});

但是,我没有看到 Intellisense 帮助中显示的类中的任何变量。

我做错了什么?

【问题讨论】:

  • 你问的是如何静态初始化密码?

标签: java android arraylist


【解决方案1】:

你需要先创建一个对象并设置好所有属性,然后添加到List:-

SearchData searchData = new SearchData();
searchData.setId(1);
searchData.setCategory(category);
...

passwords.add(searchData);

【讨论】:

    【解决方案2】:

    为你的类创建一个构造函数。

    class SearchData
    {
        public int id;
        public String category;
        public String company;
        public String loginAction;
        public String username;
        public String password;
        public String type;
        public String appName;
    
       SearchData(int id, String category, String company......){
    
             this.id = id;
             this.category = category;
             this.company = company;
             ...
       }
    }
    

    然后像这样使用它:

    passwords.add(new SearchData(0,"Category1", "Company1"......));
    

    【讨论】:

      【解决方案3】:

      创建一个对象并存储对它的引用:

      SeachData searchData = new SearchData();
      

      设置你要设置的属性:

      searchData.setId(123);
      

      ...等等

      searchData. Ctrl+Space 现在应该显示智能感知了..

      将搜索引用添加到列表中:

      list.add(searchData);
      

      【讨论】:

        【解决方案4】:
        SearchData sd = new SearchData();
        sd.id = 0;
        sd.category = "hello";
        passwords.add(sd);
        

        【讨论】:

          猜你喜欢
          • 2023-04-02
          • 1970-01-01
          • 1970-01-01
          • 2017-02-23
          • 2021-12-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多