java - 动态插入数组的大小并将旧值保留在数组中

标签 java arrays swing

我是否可以动态增加数组的大小并保留数组中的旧值。我们不知道数组的大小,因为用户不断插入值,我们必须在每次输入后更改数组长度。因此,如果有人有比我想要实现的更好的选择,我将不胜感激。

private static String[] hotelName;
private static int lent=1;

public FiletoArray() 
{
     hotelName=new String[lent];
     initComponents();
}

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                         
      // TODO add your handling code here:
      insertHotel(this.jTextField1.getText());
      this.jLabel3.setText("" + lent);
      lent=lent+1;
      for(int a=0;a<lent;a++)
      {
          this.jTextArea1.setText(hotelName[a] + "\n");
      }
}                                        

public static void insertHotel(String hotelValue)
{ 
       hotelName[lent-1]=hotelValue;
}

最佳答案

使用 ArrayList如果可能的话,它将动态增长以适应其数据。如果您需要使用数组,那么您需要分配一个新的(更大的)数组,然后使用 System.arraycopy复制旧数组的内容。

关于java - 动态插入数组的大小并将旧值保留在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16064449/

相关文章:

java - 我想开发适用于 iPhone 和 Android 的应用程序。使用哪个框架更好?

java - 基本的 Java 类型转换问题

arrays - 将数组传递给存储到 postgres

javascript - 使用 JavaScript 从每个元素中删除隐藏类

java - java中的放大和缩小?

java - 在 Java 中加密 (AES),在 C++ 中解密 (OpenSSL)

c - 将结构的元素添加到同一结构的数组时出错

java - 我的代码的哪一部分在事件调度队列中

java - JButton 问题未显示?

java - 使用 @WebMvcTest 的测试切片正在加载大量与目标无关的 Controller