2012-05-19 91 views
-2

这个applet正在处理的正确代码是什么?我只需要将类型为int的数组添加到Arraylist中...粗体是主要问题(如果剩下的工作... -__-)!为什么这不起作用(Java)? (将数组转换为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}; 
... 
} 
+1

好了,现在,我已经格式化你的代码:这里是实际的问题?我没有看到任何问题。 –

+0

你是什么意思,'不起作用'。对我来说看起来很好。当然,pascalsT与各种pascals没有任何关系。 – bmargulies

+2

正如@Makoto所建议的那样,您需要将对象添加到您的ArrayList中,以便它有用。 –

回答

-2

到ArrayList的转换完成这样的阵列,尝试了这一点:

int[] a = {1,2,3}; 

List list = new ArrayList(Arrays.asList(a)); 
+0

这是如何解决原始海报(尚未完全定义)的问题? –

+0

我已经给他将数组转换为数组列表的方法。而不是否定的事情试图解决它...如果你不能尝试欣赏解决方案 –

+0

我不能解决它,直到他澄清它。但是,您的解决方案似乎与他的问题或担忧无关。我在评论中给了他一个有用的建议。 –

1

如果我明白你的问题,你只想把数组值到列表中。

添加下面的所有声明之后:

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

或者,你可以在你的构造函数中添加这些语句。这个特定的语法就是所谓的实例初始化器。它在你的构造函数之前运行,并且你可以在类中的任何位置拥有它们,并且它将按声明的顺序运行。事实上,你可以将它们与你的变量声明交错,但我相信变量必须在它所涉及的实例初始化程序之上声明。

作为一个方面说明,拥有一个实例变量与赋值是基本相同的事情。

private Integer a = new Integer(1); 

在功能上等同

private Integer a; 
{ a = new Integer(1); } 
相关问题