gpt4 book ai didi

java - 使用字符串方法来计算字符数

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

我正在尝试计算字符串中非空白字符的数量。

当没有前导空格时它工作正常,但是当我在 from 中添加 3 个空格时,它会使非空白字符的数量加倍。

这是我的代码:

import java.io.*;
import java.util.*;

public class countCharacters
{

public static void main(String[] args) throws Exception
{
String str1;
int count;
count = 0;



BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter a string: ");
str1 = dataIn.readLine();
while(str1.length() > 0)
{


System.out.println("The String ''" + str1 + "''");
System.out.println("has " + str1.length() + " Characters, including all blanks.");
for(int i=0; i < str1.length(); ++i)
if(str1.charAt(i) !=' ')
count++;
str1 = str1.trim();
System.out.println("and " + str1.length() + " Characters, trimmed of leading and trailing blanks.");
System.out.println("and " + count + " non-blank characters.");
System.out.println("");

System.out.print("Enter a string: ");
str1 = dataIn.readLine();
}

System.out.println("Program complete.");

}
}

最佳答案

你确定每次都会将计数加倍吗?也许这只发生在第二次通过主循环时?

当您输入新字符串时,您应该重置计数。否则,您只需通过主循环添加上一次的 count 即可。在主循环底部的 System.out.print("Enter a string: "); 之前添加一行,例如 count = 0;,或者声明并初始化count 在循环内部,而不是在循环之前。

关于java - 使用字符串方法来计算字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26742323/

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