簡體   English   中英

如何在while循環內增加charAt值

[英]How to increase charAt value inside a while loop

我正在嘗試找到一種方法來增加使用charAt的值,但希望能夠在while循環內進行更新。 下面是我當前的代碼。 我嘗試在循環內部重新創建變量,並在末尾添加++以增加值,但是我收到意外的類型錯誤。

我試圖讓它接受您輸入的值(即3124)並連接每個值,然后將它們加在一起。 因此,基於該示例,它的值為10。

public static void main(String[] args) {

int Num, counter, i;
String str1;


str1 = JOptionPane.showInputDialog("Enter any number: ");
Num = str1.length();

counter = 0;
i = Integer.parseInt(Character.toString(str1.charAt(0)));
NumTot = 0;

while (counter <= Num)
{
  NumTot = i;
  counter++;
  i = Integer.parseInt(Character.toString(str1.charAt(0++)));
  }

     System.exit(0);
}

理念:

  • 取一個整數
  • 使用mod 10逐位提取數字

示例代碼:

public class IntegerSum {

    public static void main(String[] args) {

        int i = 3124;
        int sum = 0;
        while (i > 0) {
            sum += i % 10;
            i /= 10;
        }
        System.out.println("Sum: " + sum);
    }
}

輸出:

Sum: 10


注意:我的回答是基於您的要求“我正在嘗試讓它輸入一個值(即3124),然后將每個值連接起來,然后將它們相加。因此,根據示例,它的值為10 。”

對您的程序進行了一些修改:

public static void main (String[] args) throws java.lang.Exception
{
    int Num, counter, i;
    String str1;
    int NumTot = 0;

    str1 = "3124";
    Num = str1.length();

    counter = 0;
    while (counter < Num)
    {


        i = Integer.parseInt(Character.toString(str1.charAt(counter)));
        NumTot = NumTot + i;
        counter++;
    }



  System.out.println(NumTot);
}

這是一個工作版本

暫無
暫無

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

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