2011-11-23 33 views
1

我有这个程序,它通过JOptionPane接受来自用户的输入。我的程序正在做的是记录从JTextArea中的JOptionPane输入的所有内容。现在,我想删除JTextArea中的一些输入,但我不知道如何。JTextArea可能的替代方案?

我在想,必须有像JList那样的东西,而不是JTextArea。但是,我不太熟悉JList,它使用数组。我真的不知道阵列D:

感谢任何人可以帮助!

回答

2

数组是编程中最基本的构造之一,我强烈建议试试这些,因为它看起来好像是对你的问题最好的解决方案。 official Java tutorial不算太坏,但它有点干燥。

基本上,数组是为了您的方便。它允许你声明一组变量空间在一行中,因此而不是:

int var1, var2, var3, var4, var5, /* snip */ , var100; 

一个可以声明的空间与一条语句总共有一百变量:

int[100] var; 

而且改为使用语法var[1]var[2]等来引用它们。当你需要对数组的每个成员做一些事情时,比如初始化,它也会有所帮助。

而不是初始化都在以自己的说法,就像这样:

var1 = 0; var2 = 0; var3 = 0; /* snip */ var100 = 0; 

相反,一个可以循环整个数组,并使用一个单独的语句来更新每个变量数组中,就像这样:

for (int i = 0; i < 100; i++) { 
    var[i] = 0; 
} 

不仅节省了代码量,而且如果需要更改变量的数量,这将更容易维护。

2

不过,我不是太熟悉,JList和它使用数组

不,它采用了ListModel

看看DefaultListModel。您可以动态地添加/删除模型中的元素。

+0

我该如何构造一个DefaultListModel? – alicedimarco

+0

哦,别介意:)我已经明白了!谢谢! – alicedimarco