簡體   English   中英

使用while和for循環時,如何訪問和操作字符串數組中的各個值

[英]How do I access and manipulate individual values in a String Array when using a while and for loop

Java的新手:嘗試學習它。

我創建了一個數組,並希望訪問該數組的各個組件。

我遇到的第一個問題是如何按如下所示將數組打印為批處理或整個數組? 例如:在最后一個value MyValue4我添加了一個換行符,以便在打印值時,輸出看起來像這樣:是否必須有更好的方法來執行此操作?

MyValue1
MyValue2
MyValue3
MyValue4

MyValue1
MyValue2
MyValue3
MyValue4

我需要做的下一件事是,當重復變量為某個數字或值時,使用其他值來操縱或替換一個值,例如:MyValue與MyValx。 因此,當repeat變量達到3時,將我的值更改為其他值,然后在達到6時將其更改回去。

我熟悉Replace方法,只是不確定如何將所有這些放在一起。 我在使用whilefor loop更改數組的一部分時遇到了麻煩。

我的代碼:

public static String[] MyArray() {
    String MyValues[] = { "MyValue1", "MyValue2", "MyValue3", "MyValue4\n" };

    return MyValues;
}

public static void main(String[] args) {

    int repeat = 0;
    while (repeat < 7) {

        for (String lines : MyArray()) {
            System.out.println(lines);
        }

        repeat = repeat + 1;

        if (repeat == 7) {
            break;
        }
    }

}

也許for周期更短:

for (int i = 0; i < 7; i++) {
    for (String lines : MyArray()) {
        // Changes depended by values.
        if (i > 3) {   
            lines = MyValx;
        }

        System.out.println(lines); // to have `\n` effect
    }
    System.out.println();
}

BTW變量將以小寫字母開頭,而不以enter\\n )結尾。 因此使用:

String myValues[] = {"MyValue1", "MyValue2", "MyValue3", "MyValue4"};

代替:

String MyValues[] = { "MyValue1", "MyValue2", "MyValue3", "MyValue4\n" };

並添加System.out.println(); 在每個周期之后而不是這個:

MyValues[n] = "value";

其中n是數組中的位置。

您可以考慮使用不帶任何參數的System.out.println()打印空行,而不是在數據中插入換行符。

您已經知道for-each循環,但是考慮一個計數控制的循環,例如

for (int i = 0; i < lines.length; i++) {
    ...
}

在那里,您可以使用i來訪問您的數組以及決定進一步的操作。

根據字符串中的數字替換數組項可能會有些棘手。 如果您熟悉正則表達式肯定可以勝任。 如果沒有,我建議您學習一下,因為它在將來的情況中肯定會有用。

一種更簡單的方法可能是使用

int a = Integer.parseInt("123");  // returns 123 as integer

但這僅適用於包含純數字(正數和負數)的字符串。 它不適用於abc123 這將引發異常。

這些是一些想法,您可以嘗試並嘗試。 也請過度使用文檔。 ;-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM