java - 为什么我从 java 编译器得到不兼容的类型?

标签 java string stringbuffer

我是一个 Java 新手,但我是一个经验丰富的程序员(汇编、COBOL、C/C++、REXX)

我不明白为什么编译器给我以下内容:

[loading java\lang\Throwable.class(java\lang:Throwable.class)]
src\LU62XnsCvr.java:265: incompatible types
found   : java.lang.String
required: java.lang.StringBuffer

代码:

message_data = "LU62XCE0513: Request File I/O Exception =" ;

我将 message_data 定义为:

static StringBuffer message_data = new StringBuffer();

那么为什么我不能将一个简单的文字 String 放入标记为 message_dataStringBuffer 中? 我的意思是两者都是 String 类型..对吗?

最佳答案

不,StringStringBuffer 完全不相关。尝试一下

message_data.append("LU62XCE0513: Request File I/O Exception =");

当我们这样做时:请注意,StringBuffer 是一个遗留类,最好在新代码中用 StringBuilder 替换,除非您需要共享的不太可能的情况跨线程的对象。它是源兼容的,因此只需更改名称即可。

关于java - 为什么我从 java 编译器得到不兼容的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5757726/

相关文章:

java - 将本地目录转换到 NAS 时对 Web 应用程序的影响

java - 无法在vim中更新jar中的文件

java - 读取 XML 文件行并将它们作为 java 中的字符串读入。

java - Xpath如何获取带有html标签的文本

java - TFL 开放数据的 JSON 解析

c - Xcode 4.2中简单C字符串的奇怪结果

java - 将子字符串替换为 StringBuffer 子字符串

java - 计算创建的字符串对象的数量

c - 用文件的内容填充字符串数组

javascript - 正则表达式提取字符串末尾第二个 "."点字符后的字符串