gpt4 book ai didi

java - 将 int 与 char 数组中的值相乘不起作用

转载 作者:行者123 更新时间:2023-12-01 06:36:31 26 4
gpt4 key购买 nike

我在将简单的 int 值 (1) 与 char 数组中的值相乘时遇到问题:

public void doStuff(String values)
{
char[] numbers = values.toCharArray();
int result = 1;

for (int i = 0; i < numbers.length; i++)
{
System.out.println(numbers[i] + " " + result);
result *= numbers[i];
}

// more stuff here
}

在我的例子中,输入字符串参数是“73167”。在“result *=numbers[i]”行中,第一次迭代后结果应为 7,但 Eclipse 中的调试信息显示结果 = 55。有什么提示吗??

最佳答案

您的问题是 "73167" 不是数字。它是由字符 "7""3""1""6" 组成的字符串,“7”。 Java 中的 char 是 Unicode 代码点,'7' 在 ASCII/UTF-8 中是 55。你想做的事情

result *= Character.getNumericValue(numbers[i]);

文档:Character.getNumericValue(char)

关于java - 将 int 与 char 数组中的值相乘不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7999137/

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