gpt4 book ai didi

java - 如何使用 boolean 值添加用户输入的数字?

转载 作者:行者123 更新时间:2023-12-02 11:42:18 24 4
gpt4 key购买 nike

我正在为学校作业编写这个程序,要求用户输入一系列字母和数字并确定它是否是数字。

我的老师希望我将数字(数字)字符相加并将其输出为“您加起来的数字是:将添加的数字放在这里”并输出字母是一个字符串,表示“这些是你的字母:*将字母放在这里。”

我认为我的代码是正确的,可以确定它是否是数字,但我最终如何添加它们?我尝试使用 if 语句来检查 Character.isDigit 是否为 true,但我不断收到错误,我认为我写的完全错误。任何回复将不胜感激。

这是我的代码:

import java.util.*;
import java.util.Scanner;
public class MyClass
{
public static void main(String args[])
{

int sum1 = 0;
String stringFull = "";
boolean isTrue = Character.isDigit(string1.charAt(i));




Scanner getString = new Scanner(System.in);
System.out.println("Please enter a sequence of letters: ");
String string1 = getString.nextLine();

for(int i = 0; i < 5; i++)
{
if (Character.isDigit(string1.charAt(i)))
{
sum1 += Character.getNumericValue(string1.charAt(i));

} else {
stringFull += string1.charAt(i);
}

if (isTrue)
{
System.out.println(sum1 * sum1);
}

}




}

}

最佳答案

您将收到以下编译错误,因为 i 在此行之前未声明

boolean isTrue = Character.isDigit(string1.charAt(i));

相反,您应该使用 false 初始化它

boolean isTrue = false;

然后,你的循环应该循环直到给定的字符串长度,但你已经硬编码为 5,当字符串长度小于 5 时,这将在运行时导致异常。

 for(int i = 0; i < 5; i++)

应更改为

 for(int i = 0; i < string1.length(); i++)

此外,在 for 循环内,您有以下代码行,但您从未更改循环内的 isTrue 值。

if (isTrue)
{
System.out.println(sum1 * sum1);
}

而且,我认为,更改 isTrue 值的正确位置,即检查数字的位置。

if (Character.isDigit(string1.charAt(i)))
{
sum1 += Character.getNumericValue(string1.charAt(i));
isTrue = true;
}

关于java - 如何使用 boolean 值添加用户输入的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48466511/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com