当前位置: 首页 > 面试题库 >

如何将字符串数组的元素添加到字符串数组列表?

米嘉禧
2023-03-14
问题内容

我试图将字符串数组作为参数传递给Wetland类的构造函数;我不明白如何将字符串数组的元素添加到字符串数组列表。

import java.util.ArrayList;

public class Wetland {
    private String name;
    private ArrayList<String> species;
    public Wetland(String name, String[] speciesArr) {
        this.name = name;
        for (int i = 0; i < speciesArr.length; i++) {
            species.add(speciesArr[i]);
        }
    }
}

问题答案:

您已经具有内置方法:-

List<String> species = Arrays.asList(speciesArr);

: -您应该使用List<String> species没有ArrayList<String> species

Arrays.asList返回一个不同的ArrayList->
java.util.Arrays.ArrayList,不能将其类型转换为java.util.ArrayList

然后,您将不得不使用addAll方法,这不是很好。所以就用List<String>

注意
:-返回的列表Arrays.asList是固定大小的列表。如果要向列表中添加某些内容,则需要创建另一个列表,并用于addAll向其中添加元素。所以,那么您最好采用第二种方法,如下所示:-

    String[] arr = new String[1];
    arr[0] = "rohit";
    List<String> newList = Arrays.asList(arr);

    // Will throw `UnsupportedOperationException
    // newList.add("jain"); // Can't do this.

    ArrayList<String> updatableList = new ArrayList<String>();

    updatableList.addAll(newList);

    updatableList.add("jain"); // OK this is fine.

    System.out.println(newList);       // Prints [rohit]
    System.out.println(updatableList); //Prints [rohit, jain]


 类似资料:
  • 问题内容: 我是Java新手,所以我几乎不需要帮助 我有 我想向此数组(脚本)添加新的字符串(string1,string2)作为示例 我想在以后的阶段中不添加新字符串 我该怎么办? 问题答案: 您无法在Java中调整数组的大小。 声明数组的大小后,它将保持固定。 相反,您可以使用具有动态大小的对象,这意味着您无需担心其大小。如果数组列表的大小不足以容纳新值,则它将自动调整大小。

  • 我想做一个名为句子的字符串,包含“你好,世界,你好吗?”

  • 问题内容: 我有点困惑。我在任何地方都找不到答案;( 我有一个String数组: 然后我通过以下方式将其转换为字符串: 我期望得到字符串,但是我却得到了字符串。 我该如何在Java中做到这一点?我正在使用Eclipse IDE 问题答案: 使用 StringBuilder 而不是StringBuffer,因为它比StringBuffer快 。 样例代码 这是使用字符串连接的更好解决方案的原因:当连

  • 我在一次采访中被要求在没有任何临时变量或.NET类、字符串方法等帮助的情况下反向相同字符串数组的元素。我被告知要使用像循环这样的基本编程结构。因为,我今天要参加另一个面试,我急急忙忙地想知道这是否真的可能,因为我找不到解决这个问题的办法。

  • 我试图获取任意长度的字符串[],并将其打印成字符串,最好使用字段分隔符。现在我有: 但是由于某种原因,它只是返回“第二个”值。我如何使它正确连接这些值? 另外,我可以使用来简化代码吗?谢谢

  • 问题内容: 我有阵列 转换为字符串: 串: 以及如何将此字符串转换回数组? 问题答案: 尝试我的stringToDeep()方法转换回Array。