java - 比较 Java StringBuffer 中的字符

标签 java string char compare stringbuffer

我想检查 StringBuffer 中某个索引处的字符是否等于一个字符。我收到错误,如何比较它们?这是我的代码:

//I have an established StringBuffer called stringbuffer

char[] mychar = null;
for(int i = 0; i < stringbuffer.length(); ++i){
        if(stringbuffer.charAt(i) != " "){
              mychar[i] = stringbuffer.charAt(i);
        }
}

我收到的错误是操作数类型 char 和 String 不兼容。不知道为什么,因为我正在比较 StringBuffer 的字符,而不是 String 或 StringBuffer。

最佳答案

char 的值类型被 ' 包围, 字符串被 " 包围你无法比较charString==在 java 。

尝试使用

if(stringbuffer.charAt(i) != ' '){

或者可能更干净(但这将检查不仅仅是简单的 ' ' )

if (! Character.isWhitespace(stringbuffer.charAt(i)) ) {

关于java - 比较 Java StringBuffer 中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28616190/

相关文章:

php - 试图从我的 json 中找到并摆脱这个\u0000

c - 反转字符串变量,或反转打印字符数组

c - malloc 之后出现段错误 char**

java SecretKeyFactory 密码哈希无法正常工作

java - JFrame 动画调整大小 Mac OS X 风格

java - Java 中的 Hangman 抛出 ArrayIndexOutOfBounds

php - 替换查询字符串的特定部分 PHP

php - 如何在 PHP 中将 UTF8 字符转换为数字字符实体

java - 将始终执行 CompletableFuture 回调

java - 创建 ServletContext 资源中定义的名称为 'jsonView' 的 bean 时出错