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

如何在Java中创建Array,ArrayList,Stack和Queue?

聂翼
2023-03-14
问题内容

我正在阅读Java文章,但在声明中没有发现差异,因此感到困惑。有人可以列出我吗?

添加了文章

http://www.theparticle.com/javadata2.html


问题答案:

关于问题的确切含义,我没有更多细节,我将回答问题的标题,

创建一个Array

String[] myArray = new String[2];
int[] intArray = new int[2];

// or can be declared as follows
String[] myArray = {"this", "is", "my", "array"};
int[] intArray = {1,2,3,4};

创建一个ArrayList

ArrayList<String> myList = new ArrayList<String>();
myList.add("Hello");
myList.add("World");

ArrayList<Integer> myNum = new ArrayList<Integer>();
myNum.add(1);
myNum.add(2);

这意味着,创建ArrayListStringInteger对象。您 _ 不能_
使用,int因为那是原始数据类型,请参阅链接以获取原始数据类型的列表。

创建一个Stack

Stack myStack = new Stack();
// add any type of elements (String, int, etc..)
myStack.push("Hello");
myStack.push(1);

创建一个Queue:( 使用LinkedList

Queue<String> myQueue = new LinkedList<String>();
Queue<Integer> myNumbers = new LinkedList<Integer>();
myQueue.add("Hello");
myQueue.add("World");
myNumbers.add(1);
myNumbers.add(2);

同样的事,作为一个ArrayList,这说明装置创建QueueStringInteger对象。

更新:

为了回应您对其他给出的答案的评论,

我现在很困惑,为什么要使用字符串。什么<String>意思

我们String仅用作纯示例,但是您可以添加任何其他 对象 ,但是要点是您使用的 对象 不是
原始类型。每个原始数据类型都有其自己的原始包装器类,有关原始数据类型的包装器类的列表,请参见链接。

我已经发布了一些链接来解释两者之间的区别,但这是原始类型的列表

  • byte
  • short
  • char
  • int
  • long
  • boolean
  • double
  • float

这意味着,您不能ArrayList像这样制作整数:

ArrayList<int> numbers = new ArrayList<int>(); 
           ^ should be an object, int is not an object, but Integer is!
ArrayList<Integer> numbers = new ArrayList<Integer>();
            ^ perfectly valid

另外,您可以使用自己的对象,这是我Monster创建的对象,

public class Monster {
   String name = null;
   String location = null;
   int age = 0;

public Monster(String name, String loc, int age) { 
   this.name = name;
   this.loc = location;
   this.age = age;
 }

public void printDetails() {
   System.out.println(name + " is from " + location +
                                     " and is " + age + " old.");
 }
}

这里有一个Monster对象,但是现在在我们的Main.java类中,我们想要保留Monster我们创建的所有记录,因此让我们将它们添加到ArrayList

public class Main {
    ArrayList<Monster> myMonsters = new ArrayList<Monster>();

public Main() {
    Monster yetti = new Monster("Yetti", "The Mountains", 77);
    Monster lochness = new Monster("Lochness Monster", "Scotland", 20);

    myMonsters.add(yetti); // <-- added Yetti to our list
    myMonsters.add(lochness); // <--added Lochness to our list

    for (Monster m : myMonsters) {
        m.printDetails();
     }
   }

public static void main(String[] args) {
    new Main();
 }
}

我帮助我女友的兄弟玩了一个Java游戏,他也必须按照这些原则做一些事情,但是我希望这个例子能得到很好的演示



 类似资料:
  • 问题内容: 我想创建一个二维数组,每个单元格都是一个! 我认为这是定义,但我不能在其中添加任何内容,这些定义是真的吗? 要么 请帮我 问题答案: 我想创建一个二维数组,每个单元格都是一个ArrayList! 如果要创建一个2D 数组 ,则可以执行以下操作:

  • 问题内容: 无论如何,我对ArrayLists还是很陌生,但是我在这个项目中需要它们,如果你们能帮助我,我将不胜感激! 基本上,我需要创建一个多维数组列表来保存字符串值。我知道如何使用标准数组来执行此操作,但是这样做并不好,因为我不知道数组的大小,我所知道的只是它会有多少个尺寸。 因此,如果你们知道如何制作“具有2 / +尺寸的可动态调整大小的数组”,请告诉我。 在此先感谢, 安迪 编辑/更新 也

  • 我已经看到了这个问题:从数组创建ArrayList 然而,当我用下面的代码尝试该解决方案时,它并不是在所有情况下都有效: 我做错了什么?代码不应该

  • 问题内容: 我看到了一个问题:从数组创建ArrayList 但是,当我使用以下代码尝试该解决方案时,它并不能在所有情况下都有效: 我在这里做错了什么?代码不应该编译就好吗? 问题答案: 问题在 是,被认为是一个单一的,因为基本数组从延伸实例。如果你有这样的工作,而不是因为现在你要发送的数组。 根据您的评论:如果您仍然想使用一个(或另一个原始类型的数组)作为主要数据,那么您需要使用wrapper类创

  • 我想将用户输入存储到ArrayList中,然后将该ArrayList放入另一个ArrayList中。这有点像一个主类别,它包含包含数据的子类别。 以下是一些代码: 我可以在"main Cat"ArrayList中添加"subCat"ArrayList吗?

  • 本文向大家介绍Array 和 ArrayList 有何区别?相关面试题,主要包含被问及Array 和 ArrayList 有何区别?时的应答技巧和注意事项,需要的朋友参考一下 Array 可以存储基本数据类型和对象,ArrayList 只能存储对象。 Array 是指定固定大小的,而 ArrayList 大小是自动扩展的。 Array 内置方法没有 ArrayList 多,比如 addAll、re