gpt4 book ai didi

java - 统计字符总数

转载 作者:行者123 更新时间:2023-11-29 05:07:22 25 4
gpt4 key购买 nike

如果我有以下 char 类型的二维对象:

aaaa...||
bbb..|ccc
ddddd..|d

方法countChars()返回不同字母的个数,即在上面的例子中返回的结果是4,因为有a, b、c、d 字符。它不计算每个字符('.''|' 在计算时不包括在内)但计算数组中不同字符的数量。另一个例子:

zzz.zz||
....tt|.
wwwwwwww

上述方法返回的结果为3 (z, t and w)在我的代码中,我没有得到想要的结果。

 public int countChars()
{
char originalChar = 0;
char anotherChar = 0;
int count = 0;
for(int r = 0; r < height; r++)
{
for(int c = 0; c < width; c++)
{
if(space[r][c] != '.' || space[r][c] != '|')
{
space[r][c] = originalChar;
}
count++;
space[r][c] = originalChar;
}

}

return count;
}

最佳答案

我会使用 Set 来处理这个问题,因为它消除了计算重复项的问题。

public int countChars() {
Set<Character> set = new HashSet<Character>();

for (int r = 0; r < height; ++r) {
for (int c = 0; c < width; ++c) {
if (space[r][c] != '.' && space[r][c] != '|') {
set.add(new Character(space[r][c]));
}
}
}

return set.size();
}

此解决方案假定 .| 是您要排除的仅有的两个字符。如果您的想法是只计算字母(或字母和数字),那么请更新您的问题陈述。

关于java - 统计字符总数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29909647/

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