Java JTable中的行计数器
在下面的代码中,我浏览一个表并计算包含“ble”、“cle”、“tion”的行数;我的计数器打印x=1时的预期值,但在x=2和3时,计数器的值是错误的 我正在使用JTable,并试图根据x的每个值计算包含上述字符串的行数 期望值:Java JTable中的行计数器,java,Java,在下面的代码中,我浏览一个表并计算包含“ble”、“cle”、“tion”的行数;我的计数器打印x=1时的预期值,但在x=2和3时,计数器的值是错误的 我正在使用JTable,并试图根据x的每个值计算包含上述字符串的行数 期望值: x=1:counter1=5 counter2=5 counter3=6 x=2:counter1=10 counter2=10 counter3=6 x=3:计数器1=20计数器2=17计数器3=6 int counter1 = 0; int counter2 =
x=1:counter1=5 counter2=5 counter3=6
x=2:counter1=10 counter2=10 counter3=6
x=3:计数器1=20计数器2=17计数器3=6
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
for (int x = 1; x < 4; x++)
{
myTable.goToValue(x);
for (int i = 0; i < myTable.getRowCount(); i++)
{
if (myTable.getIcon(i, 0).matches("blue.gif"))
{
if (myTable.getRowValue(i, 1).contains("ble."))
{
counter1++;
}
if (myTable.getRowValue(i, 1).contains("cle."))
{
counter2++;
}
if (myTable.getRowValue(i, 1).contains("tion."))
{
counter3++;
}
}
}
System.out.println(counter1);
System.out.println(counter2);
System.out.println(counter3);
}
int计数器1=0;
int计数器2=0;
int计数器3=0;
对于(int x=1;x<4;x++)
{
myTable.goToValue(x);
对于(int i=0;i
尝试初始化计数器1
,计数器2
和计数器3
在循环的第一个之外。尝试初始化计数器1
,计数器2
和计数器3
在循环的第一个之外。我不太明白你想在这里做什么,但是如果你在数行数,你不应该把
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
在for循环之外?我不太明白您在这里试图做什么,但是如果您正在计算行数,您不应该
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
在for循环外部?将计数器变量的初始化移到for循环内部。
每次通过循环时,都需要将值重置为零。计数器只是继续计数,因为您只在进程开始时将其设置为零,而不是在x=2和x=3之前
更改此项:
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
for (int x = 1; x < 4; x++) {
myTable.goToValue(x);
int计数器1=0;
int计数器2=0;
int计数器3=0;
对于(int x=1;x<4;x++){
myTable.goToValue(x);
为此:
for (int x = 1; x < 4; x++) {
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
myTable.goToValue(x);
for(int x=1;x<4;x++){
int计数器1=0;
int计数器2=0;
int计数器3=0;
myTable.goToValue(x);
在for循环内移动计数器变量的初始化。
每次通过循环时,您都需要将值重置为零。计数器只是保持计数,因为您仅在过程开始时将其设置为零,而不是在x=2和x=3之前
更改此项:
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
for (int x = 1; x < 4; x++) {
myTable.goToValue(x);
int计数器1=0;
int计数器2=0;
int计数器3=0;
对于(int x=1;x<4;x++){
myTable.goToValue(x);
为此:
for (int x = 1; x < 4; x++) {
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
myTable.goToValue(x);
for(int x=1;x<4;x++){
int计数器1=0;
int计数器2=0;
int计数器3=0;
myTable.goToValue(x);
在x的每个值上,我计算包含“ble”、“cle”、“tion”的行数,我试图将初始化移到循环之外,但是当x=2,x=3时计数器的值是错误的。每个x值的计数器返回相同的值?第一次,在x=1时,值是正确的,但在x=2和x=3时,它们继续计数:x=1,counter1=5,counter2=5,counter3=6 x=2,xounter1=10,counter3=12;x=3,counter1=15;counter2=15;计数器3=18在x的每个值上,我计算包含“ble”、“cle”、“tion”的行数,我试图将初始化移到循环之外,但是当x=2,x=3时计数器的值是错误的。每个x值的计数器返回相同的值?第一次,在x=1时,值是正确的,但在x=2和x=3时,它们继续计数:x=1,counter1=5,counter2=5,counter3=6 x=2,xounter1=10,counter3=12;x=3,counter1=15;counter2=15;计数器3=18彼得,我试图将初始化移到循环外,但当x=2,x=3时,计数器1couter2和计数器3的值是错误的。我试图将初始化移到循环外,但当x=2,x=3时,计数器1couter2和计数器3的值是错误的。这是摆动吗?您正在使用JTable吗?请填写必要的详细信息。什么计数器是否应该显示?它们显示的是什么?这个问题很不清楚。为什么是“tion”,而不仅仅是“tion”?我已根据您的备注更新了我的问题What is myTable?在is getRowValue或goToValue方法中没有任何地方。您使用的是特殊的方法吗?此Swing?您使用的是JTable吗?请填写必要的详细信息。计数器应显示什么?它们显示什么?此问题非常不清楚。Why“TIONE.”而不仅仅是“TIONE”?我已经根据您的备注更新了我的问题。什么是myTable?中没有getRowValue或goToValue方法。您是否使用了一些特殊的方法?