【问题标题】:How can I make arrays with own objects in Java in Android Studio.如何在 Android Studio 中使用自己的 Java 对象制作数组。
【发布时间】:2018-03-20 19:13:06
【问题描述】:

我有一段长这样的代码

Kwas a1 = new Kwas("Kwas Azotowy(V)", "HNO3");
// etc..
Kwas a17 = new Kwas("Kwas FluorkoWodorowy", "HF");

我怎样才能把它写成一个数组?我尝试了类似

Kwas[] a = new Kwas[17] 

但是没有用。

我的“Kwas”类如下所示:

public class Kwas {
String name;
String formula;

public Kwas( String nazwa, String wzor)
{
    name = nazwa;
    formula = wzor;
}

void setName(String c)
{
name = c;
}
void setFormula(String c)
{
    formula = c;
}
public String getName()
{
    return name;
}
public String  getFormula() {return formula;}

}

【问题讨论】:

  • 您说“它不起作用”,但我很好奇您在尝试代码时遇到了什么错误?
  • 错误是什么
  • Nouman Ch "它找不到符号类 Kwas" 但是当我使它不在数组中时一切正常。
  • 您的Kwas 课程是否在同一个包中?如果不是,您是否将其导入当前班级?

标签: java android arrays oop object


【解决方案1】:

你可以这样做:

List<Kwas> list = new ArrayList<Kwas>();
list.add(a2);

【讨论】:

  • 你也可以试试 list.add(new Kwas("Kwas Siarkowodorowy", "H2S"));
  • list.add(a2);错误地我到达了“ 预期”
  • 确保你有 import java.util.ArrayList;导入 java.util.List;
【解决方案2】:

ArrayList&lt;yourObjectName&gt; arrayName = new ArrayList&lt;yourObjectName&gt;();

然后在每个对象上添加 .add(object)

【讨论】:

    【解决方案3】:

    只需像这样实现一个 ArrayList:

    ArrayList<Kwas> newArray= new ArrayList<>();
    

    然后:

    newArray.add(a2);
    newArray.add(a3);
    newArray.add(a4);
    newArray.add(a5);
    newArray.add(a6);
    newArray.add(a7);  
    ...
    ...
    

    如果你想得到一个特定的项目,只需写下这样的内容:

    newArray.get(1).getName(); //for example
    

    【讨论】:

    • 但在android studio中找不到符号添加。
    • 确保数组是ArrayList的类型。
    • @JakubLelek 只需接受此答案即可解决您的问题。谢谢
    【解决方案4】:

    我还不能发表评论,所以我必须提供它作为答案。在这里每个人都在回答 OP 如何构造一个 List,但实际上没有人回答他如何创建一个数组,这对于现在可能认为您无法创建自定义对象数组的 OP 来说可能非常混乱。你绝对可以。但我不知道问题出在哪里。

    Kwas[] a1 = new Kwas[17];
    

    绝对是正确的语法。你确定你包括课程吗?你能发布确切的代码和错误吗?

    我的猜测是你没有导入你的类。在 Android Studio 中,尝试将光标放在 Kwas 之后并按 Ctrl+Space。这应该显示一个下拉列表。选择第一行并按回车。现在它应该已经向你的类添加了一个导入。

    【讨论】:

    • 问题是关于 android studio 而不是纯 java,android studio 不支持那种数组
    • 我不知道你在说什么。 Android Studio 绝对支持对象数组。
    【解决方案5】:

    您只需输入:

    ArrayList<ObjectType> arrayName = new ArrayList<ObjectType>();
    

    添加元素:

    arrayName.add(someObject);
    

    移除元素:

    arrayName.remove(arrayName.get(someInteger));
    

    获取元素:

    arrayName.get(someInteger);
    

    PS:别忘了导入:

    import java.util.ArrayList;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-13
      • 2015-03-06
      • 2020-09-19
      • 2012-01-02
      相关资源
      最近更新 更多