可能关注的人
我正在尝试使用单个打印行在Java中编译一个程序。我被要求使用转义序列,并且得到的错误是非法的转义字符。这是我想要的输出。我想要的输出:
Alpha
Bravo
Charlie
Delta
EchoFoxtrotGolf
Hotel
India
This is a test.
这是我的代码:
public class PrintingChoicesEscapesSecond {
public static void main( String[] args ) {
System.out.println( "Alpha\n\Bravo\n\n\Charlie\n\Delta\n\n\EchoFoxtrotGolf\n\Hotel\n\n\India\n\n\This is a test. );
}
}
答案 0 :(得分:1)
两件事:
您缺少右引号
您在\
之后有\n
,它将尝试转义下一个字母,这不是您想要的。
在String
中:
Alpha\n\Bravo
^^ this \ is trying to escape B which is invalid.
删除结尾的\
。另外,您还可以使用一些额外的\n
来获得所需的输出。(在Bravo和Hotel之后再加一个):
System.out.println("Alpha\nBravo\nCharlie\nDelta\n\nEchoFoxtrotGolf\nHotel\nIndia\n\nThis is a test. ");
输出:
Alpha
Bravo
Charlie
Delta
EchoFoxtrotGolf
Hotel
India
This is a test.
答案 1 :(得分:0)
您也可以尝试以下代码:
StringBuilder sb = new StringBuilder();
sb.append("Alpha").append("\n")
.append("Bravo").append("\n")
.append("Charlie").append("\n")
.append("Delta").append("\n").append("\n")
.append("Echo").append("Foxtrot").append("Golf").append("\n")
.append("Hotel").append("\n")
.append("India").append("\n").append("\n")
.append("This is a test");
String formattedString = sb.toString();
System.out.println(formattedString);