簡體   English   中英

從數組中獲取值

[英]Getting values from an array

所以假設我有一個名為arr的數組,其值為&&&&.&& 我想找到小數點后的&符號(&)數,並將值存儲到numDecimalDigits

int numDecimalDigits = 0;

char[] arr = new char[7]

for (int i = 0; i < str.length(); i ++)
{
    for (int decimal = (arr[pos] = '.'); decimal <= arr.length; decimal ++)
    {
        numDecimalDigits += 1;
    }
}

我不確定這是不是正確的做法。 因此,外部for循環遍歷數組的每個索引值。 內部for循環從十進制開始,到數組末尾結束。 每次找到新值時, numDecimalDigits都會加1。 但是,在我的代碼中,我認為numDecimalDigits返回的值不正確。

無需使用數組。 這很容易:(假設str值必須包含一個 ' . ')

    int numDecimalDigits = str.split("\\.")[1].length();

或者你可以用indexOf(".")減去str.length()-1 indexOf(".")

    int numDecimalDigits = str.length()-1 - str.indexOf(".");

你只需要一個循環:

boolean foundDot = false;
for (int i = 0; i < arr.length; i++) {
    if(arr[i] == '.') {
        foundDot = true;
    } else if(foundDot) {
        numDecimalDigits ++;
    }
}

暫無
暫無

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

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