关于java中长字符串编写的问题

[color=blue]
假如我想定义一个字符串,字符串很长,在eclipse中一行或多行不能完全显示该字符串。如
定义这样一个字符串:
String str="


str=str+ "height="120" id="vcastr3">"
··········
等等之类的

备注:将字符串保持成这样子有助于代码的阅读,可读性强。
[/color]
[b]问题补充:[/b]
RednaxelaFX 的确可以行的通,但是这样写依然比较复杂,能否有更好的办法呢?例如直接就在字符串的头和尾加一对双引号或者其他比较简便的办法······

在当前的Java里,没有别的好办法了。当前的Java不支持非转义的字符串字面量,不支持带有换行符的字符串字面量(不是写成\n而是直接一个换行符的那种),也不支持直接在相邻的字符串字面量(没有+连接的)直接拼接。

在C/C++里相邻的字符串字面量会被直接拼接起来:
[code="c"]char* str = "This is a string. " "And this follows up.";[/code]
在很多别的语言里都支持非转义的字符串字面量,或者多行字符串字面量,或者两者的结合。例如说在C#里可以写:
[code="c#"]static class StringLiteralDemo {
static void Main(string[] args) {
var str = @"
y=""456""
z=""678"" />";
System.Console.WriteLine(str);
}
}

/* str得到的字符串内容是:

y="456"
z="678" />
*/[/code]
但在Java里……目前没指望。

像这样就行了:
[code="java"]String s = " + "y=\"456\"";
+ "z=\"678\" />"[/code]
Java里相邻的、用+连接的字符串字面量会在编译时自动合并成连续的一个字符串常量。
注意只对字面量有效,赋值给变量再+就无效了。

唔,手滑把分号滑到上面去了……
[code="java"]String s = " + "y=\"456\""
+ "z=\"678\" />";[/code]

另一个主意:拿出来放在一个 .xml 文件里…… 也容易编辑。

[quote="jingrenlang"]备注:将字符串保持成这样子有助于代码的阅读,可读性强。[/quote]

那你就错了

存文件吧