For Loop值赋值多个String - java

时间:2013-12-27 07:28:22

标签: java for-loop

下面的

是For Loop

//Declare 5 String variable
String p1, p2, p3, p4, p5;

for (int row = 1; row <= 5; row++) {
    String pno = driver.findElement(
        By.xpath("//*[@id='body']/table/tbody/tr[" + row + "]/td")).getText();
    p1 = pno;
}

我的问题

执行第一行(row = 1)时,应该在p1变量

中分配该值

执行第二行(row = 2)时,应该在p2变量中赋值 反之亦然

如何在java

中使用单独的变量分配每个行值

3 个答案:

答案 0 :(得分:2)

您正在寻找arrayArrayList

//in your loop where i is iterator variable
arr[i] = someNewValue;

或者如果你不确定有多少元素

arrayList.add(someNewValue);

答案 1 :(得分:0)

如果您想要动态大小的集合,可以使用ArrayList。即,当你不知道你需要的确切尺寸时

ArrayList<String> p = new ArrayList<String>();
for (int row = 1; row <= 5; row++) {
    String pno = driver.findElement(
                    By.xpath("//*[@id='body']/table/tbody/tr[" + row + "]/td")).getText();
    p.add(pno);
}

如果您知道确切大小,那么字符串Array就足够了。我看到你的for循环中有硬编码最大值条件语句。那么,很明显你知道你需要的确切尺寸。在这里,您也可以使用String数组。

String[] p = new String[5]; // length is 5
for (int row = 1,count=0; row <= 5; row++,count++) {
    String pno = driver.findElement(
                 By.xpath("//*[@id='body']/table/tbody/tr[" + row + "]/td")).getText();
    p[count] = pno;
}

希望你现在明白

答案 2 :(得分:0)

//Declare 5 String variable
String p1, p2, p3, p4, p5;

String[] pArray = new String[5]; // create an array to store values

for (int row = 1; row <= 5; row++) {
    String pno = driver.findElement(
        By.xpath("//*[@id='body']/table/tbody/tr[" + row + "]/td")).getText();
    pArray[row - 1] = pno; // store value to an array
}

// put the values in the array to the Strings originally created
p1 = pArray[0];
p2 = pArray[1];
p3 = pArray[2];
p4 = pArray[3];
p5 = pArray[4];