【问题标题】:Why does this not work (Java)? (Arrays into Arraylist of type int)为什么这不起作用(Java)? (数组到 int 类型的 Arraylist 中)
【发布时间】:2012-05-19 02:06:56
【问题描述】:

我正在开发的这个小程序的正确代码是什么?我只需要将 int 类型的数组添加到 Arraylist 中......粗体是主要问题(如果其余的工作...... -__-)!

import java.applet.Applet;
import java.awt.*; 
import java.awt.event.*; 
import java.applet.*; 
import javax.swing.*; 
import java.text.DecimalFormat;
import java.util.ArrayList;
public class BinomialExpander extends JApplet implements ActionListener 
{ 
     JLabel lblFahrenheit; 
     JLabel lblCelsius; 
     JLabel outputCelsius; 
     JTextField txtFahrenheit; 
     double degreesFahrenheit; 
     FlowLayout layout;
     ArrayList<int[]> pascalsT = new ArrayList<int[]>();
     private int[] pascal1 = {1,1};
     private int[] pascal2 = {1,2,1};
     private int[] pascal3 = {1,3,3,1};
     private int[] pascal4 = {1,4,6,4,1};
     private int[] pascal5 = {1,5,10,10,5,1};
     private int[] pascal6 = {1,6,15,20,15,6,1};
     private int[] pascal7 = {1,7,21,35,35,21,7,1};
     private int[] pascal8 = {1,8,28,56,70,56,28,8,1};
     private int[] pascal9 = {1,9,36,84,126,84,36,9,1};
     private int[] pascal10 = {1,10,45,120,210,120,45,10,1};
...
}

【问题讨论】:

  • 好的,现在我已经格式化了您的代码:实际问题在哪里?我看不出有什么问题。
  • 你是什么意思,'不起作用'。在我看来很好。当然,pascalsT 与各种 pascals 没有任何关系。
  • 正如@Makoto 建议的那样,您需要将对象添加到您的 ArrayList 以使其有用。
  • 大部分是不必要的(我认为)被问到的是像pastebin.com/s9RN03mB 这样的东西是否真的有效。

标签: java arrays arraylist int


【解决方案1】:

如果我理解您的问题,您只想将数组值放入列表中。

在所有声明之后添加以下内容:

{
    pascals.add(pascal1);
    pascals.add(pascal2);
    ...
}

或者,您可以在构造函数中添加这些语句。这种特殊的语法就是所谓的实例初始化器。它在您的构造函数之前运行,您可以在类中的任何位置使用它们,并且它将按照声明的顺序运行。事实上,您可以将它们与变量声明交错,但我认为变量必须在引用它的实例初始化程序之上声明。

附带说明一下,拥有一个带有赋值的实例变量是必不可少的。

private Integer a = new Integer(1);

在功能上与

相同
private Integer a;
{ a = new Integer(1); }

【讨论】:

    【解决方案2】:

    Array 到 ArrayList 的转换就是这样完成的,试试这个:

    int[] a = {1,2,3};
    
    List list = new ArrayList(Arrays.asList(a));
    

    【讨论】:

    • 这如何解决原始发帖人的(尚未完全定义的)问题?
    • 我已经给了他将数组转换为arraylist的方法。而不是否定的事情试图解决它......如果你不能请尝试欣赏解决方案
    • 在他澄清之前我无法解决。但是您的解决方案似乎与他的问题或疑虑无关。我在评论中给了他一个有用的建议。
    • 为什么是 for 循环?它甚至不处理 ArrayList
    猜你喜欢
    • 2012-12-30
    • 1970-01-01
    • 2016-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多