字符串可以包含<;0x00>;以及java中的赋值

字符串可以包含<;0x00>;以及java中的赋值,java,string,Java,String,如果我声明一个字符串,该字符串是否可能包含以及指定的数据 例如: String s = "Stack"; 字符串结果是否可以为: 堆叠 是的,作为: String s = "Stack\u0000\u000"; 这与C/C++不同,C/C++中的字符串以'\0'字符结尾 如果字符串必须作为字节数组传递给本机代码,那么java有一个适用于UTF-8的技巧, 一种改进的UTF-8,它还将'\u0000'转换为多字节序列: 请注意,XML中不允许使用\u0000(与其他一些控制字符一样) 顺便说一

如果我声明一个字符串,该字符串是否可能包含
以及指定的数据

例如:

String s = "Stack";
字符串结果是否可以为:

堆叠

是的,作为:

String s = "Stack\u0000\u000";
这与C/C++不同,C/C++中的字符串以
'\0'
字符结尾

如果字符串必须作为字节数组传递给本机代码,那么java有一个适用于UTF-8的技巧, 一种改进的UTF-8,它还将
'\u0000'
转换为多字节序列:

请注意,XML中不允许使用
\u0000
(与其他一些控制字符一样)


顺便说一句,0字符串终止符被其发明者视为C语言中最大的错误。它还影响了处理器指令集。

yes:
string s=“Stack”newprintstream(newyouroutputstream(…)-编写自己的筛选器输出流时未通过
。另外
string.trim()
将删除尾部控制字符。