java中的变量转义序列
例如:java中的变量转义序列,java,unicode,unicode-escapes,Java,Unicode,Unicode Escapes,例如: System.out.println("Hello Uni\u03C0"); System.out.println("Hello Esc \\"); 这会产生类似于 System.out.format("Hello Esc \%c",'\\'); System.out.format("Hello Esc \%c",'\"'); 你好,Uniπ 你好,Esc\ 是否有一种方法可以在循环的不同迭代过程中为03C0和\赋予不同的值 比如说 差不多 System.out.format("H
System.out.println("Hello Uni\u03C0");
System.out.println("Hello Esc \\");
这会产生类似于
System.out.format("Hello Esc \%c",'\\');
System.out.format("Hello Esc \%c",'\"');
你好,Uniπ
你好,Esc\
是否有一种方法可以在循环的不同迭代过程中为03C0和\赋予不同的值
比如说
差不多
System.out.format("Hello Esc \%c",'\\');
System.out.format("Hello Esc \%c",'\"');
我知道这会给编译器带来错误。我想知道如何做到这一点
例如,我希望在循环的每次迭代中打印不同的unicode字符(例如从\u0000到\u00C3)
例如,我有一个函数,它返回整数的4位十六进制值:
public static String hexa(int a)
{
int x=a;
String b= String.format("%x",x);
if(b.length() == 1)
{
b="000"+b;
}
if(b.length() == 2)
{
b="00"+b;
}
if(b.length() == 3)
{
b="0"+b;
}
return b;
}
现在,我想将\u与hexa(I)结合起来,为不同的I获取不同的unicode字符您甚至不必将整数转换为十六进制字符串。将其保留为整数并使用
Character.toChars()
显示for循环的进一步示例:
public static void main(String [] args) {
String lineSeparator = System.lineSeparator();
StringBuilder sb = new StringBuilder();
for(int i = 0x03C0; i < 0x03D0; i++) {
sb.append(Character.toChars(i)).append(lineSeparator);
}
System.out.println(sb.toString());
}
最后一点澄清:
System.out.println(Character.toChars(0x03C0)[0] == '\u03C0');
输出:
π
ρ
ς
σ
τ
υ
φ
χ
ψ
ω
ϊ
ϋ
ό
ύ
ώ
Ϗ
true
没有StringBuilder的示例:
String foo = "";
for(char c : Character.toChars(0x03C0)) {
foo += c;
}
System.out.println(foo);
没有答案?我真的很想知道如何做到这一点。我不明白,这如何解决我的问题?我想说System.out.print(“\u(变量)”);如何将变量添加到\u或\中?您不需要\u或\。所有这些工作都是将源代码转换为字符。如果运行我的示例,您将看到它打印pi字符。我将修改它以添加for循环。非常感谢!这或多或少是我需要的。唯一的问题是我不太熟悉StringBuilder类方法。append()做什么?我想我可以用十进制格式声明一个以0x为前缀的整数?这只是一种方便。我将添加一个没有它的示例,我是这样做的:for(I=20;I