import java.util.Random;
import java.lang.Object;
import org.apache.commons.lang3.ArrayUtils;
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int[] array = {1,2,3,4,5,6,7,8,9};
int rnd = new Random().nextInt(array.length);
int a = rnd;
TA1.setText("\n Random interger: " + a); //jTextArea (im using netbeans to build the gui by using the swing controls in the pallete)
for (int i: array)
{
System.out.print(" " + i);
}
switch (a) {
case 1:
TA1.append("Hello1");
array = ArrayUtils.removeElement(array, 1);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 2:
TA1.append("Hello2");
array = ArrayUtils.removeElement(array, 2);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 3:
TA1.append("Hello3");
array = ArrayUtils.removeElement(array, 3);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 4:
TA1.append("Hello4");
array = ArrayUtils.removeElement(array, 4);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 5:
TA1.append("Hello1");
array = ArrayUtils.removeElement(array, 5);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 6:
TA1.append("Hello6");
array = ArrayUtils.removeElement(array, 6);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 7:
TA1.append("Hello7");
array = ArrayUtils.removeElement(array, 7);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 8:
TA1.append("Hello8");
array = ArrayUtils.removeElement(array, 8);
for (int i: array) {
System.out.print(" " + i);
}
break;
case 9:
TA1.append("Hello9");
array = ArrayUtils.removeElement(array, 9);
for (int i: array) {
System.out.print(" " + i);
}
break;
default:
System.out.println("error");
break;
}
}
我编写了这段代码来更新数组元素,但是每次我单击此代码的按钮时,数组都会初始化为声明的原始值。我希望更新数组,即每次删除元素时,当我下次单击按钮时更改都应该可见。 我知道了为什么会发生此问题,但是除了将数字存储在数据库中之外,我不知道如何解决它。我想要更有效的东西
答案 0 :(得分:1)
我没有看到完整的代码,但是我想是因为这一行:
int[] array = {1,2,3,4,5,6,7,8,9};
始终执行此代码块,然后再次初始化数组。初始化后,您需要正确管理此阵列的状态。