【问题标题】:I need to add names and ages to an arraylist in Java [closed]我需要将姓名和年龄添加到 Java 中的数组列表中 [关闭]
【发布时间】:2017-01-05 17:31:18
【问题描述】:

您好,我是编程新手,所以我的问题是如何将以下数据添加到数组列表中

Fred    21
Jo  43
Zoe 37

我发现当我这样做时

ArrayList<String> namearray_list=new ArrayList<String>(); 
namearray_list.add("Fred");

我不能加上年龄,因为那是一个整数

我在这个网站上查看了一个类似的问题,但无法解决。

【问题讨论】:

  • 听起来你真正想要的是一个Person 类或类似的东西——同时包含一个名字和一个年龄。然后你可以有一个List&lt;Person&gt;
  • 啊是的,我被要求创建一个数据类并且已经这样做了,但我仍然迷路
  • 向我们展示你当时做了什么,并具体说明你仍然面临的问题。
  • @ntalbs 这个编辑是错误的——你不应该真正修复用户实际询问的代码中的错误。
  • @djechlin 为什么你认为我的编辑是错误的。我只是重新格式化以看起来更好,而不是编辑代码本身。你能告诉我我做错了什么吗?

标签: java arraylist


【解决方案1】:

ArrayList 将只保存一种类型的数据。就目前而言,您有一个需要修复的编译器警告,即ArrayList 需要指定一个类型,ArrayList&lt;String&gt;ArrayList&lt;Integer&gt; 在这种情况下是合适的。那么您尝试做的事情是错误的,会更加明显。

您的选择是:

  • nameage 编写Person
  • 强制age 为字符串,例如"" + 21(虽然这会让人感到困惑和糟糕的设计)
  • 使用两个ArrayList,每个数据类型一个

【讨论】:

  • 感谢您的帮助,我将如何做第一个选项
  • @Rhp12321 您需要查找教科书或教程或其他说明——您的问题首先不适合 SO,但我给了您一个开始。我并不是真的要从头开始教授编程。
  • 嘿,谢谢伙计,我会试一试您的选择。
【解决方案2】:

您可以创建一个名为 Person 的类来存储姓名和年龄。

class Person {
    String name;
    int age;

    Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

}

然后创建一个新对象并将其添加到您的列表中:

List<Person> people = new ArrayList<Person>();
people.add(new Person("Fred", 21));
people.add(new Person("Jo", 43));
people.add(new Person("Zoe", 37));

【讨论】:

  • 感谢您用勺子喂别人代码并欺骗他们自己创建代码的机会。
  • 我不会投票,但我有点反对将完整的解决方案交给那些基本上要求编程教程的人,或者只是解决他们课堂或自学的家庭作业问题代替编程教程。
  • @djechlin:你应该投票。不应鼓励这种行为。
  • @HovercraftFullOfEels 如果 1)我有一个竞争性的答案,或者 2)我留下了一个足够有建设性的评论(要么使答案合格或有机会改进它),我倾向于避免投反对票。当然,我们的两个 cmets 是对其他任何看起来的人的建议。我认为 my 的答案是不确定的,但没有“hand me teh codez”是一个很大的不同。
  • @djechlin:根据答案的质量,我对我也回答过的问题的答案是否赞成或反对毫无疑问。这显然是非常可怕的。你的我投票赞成 OTH。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-01-03
  • 2015-03-16
  • 2016-06-08
  • 2018-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多