Java char数据类型的用途是什么?
我目前正在阅读一本关于Java的教科书,涉及Java char数据类型的用途是什么?,java,string,char,Java,String,Char,我目前正在阅读一本关于Java的教科书,涉及String数据类型的每一章也讨论char。我的问题是,char在现实世界中有什么用途 我发现的唯一一件事是,因为String是不可变的,所以它对于密码来说是一个糟糕的选择。因此,应该选择字符数组(char[])而不是String。但是,Java确实有一个名为StringBuilder的字符串可变类;这难道不像char[]那样适合替换字符串吗?这已经在评论中得到了回答:) String是Chars的集合。如果没有Chars,您将无法从中构建String
String
数据类型的每一章也讨论char
。我的问题是,char
在现实世界中有什么用途
我发现的唯一一件事是,因为
String
是不可变的,所以它对于密码来说是一个糟糕的选择。因此,应该选择字符数组(char[]
)而不是String
。但是,Java确实有一个名为StringBuilder
的字符串可变类;这难道不像char[]
那样适合替换字符串吗?这已经在评论中得到了回答:)
String
是Char
s的集合。如果没有Char
s,您将无法从中构建String
s
因为Char[]
和处理Char[]
是如此重要,它们保证有自己的类来处理它们-因此String
在编码过程中,除非您正在处理
字符串或处理密码,否则不太可能直接使用Char
数据类型。Char[]
用于密码的唯一原因是,很难意外地将它们打印到日志中/在内存中查看/放入字符串缓存,等等,因为一旦你完成了它,你就可以显式地将数组中的元素归零,这样它在内存中的停留时间就不会超过需要的时间。char
意味着可以容纳2个字节。要存储字符,有很多很多很多用途。但是,如果你想要一个简单的,如果你没有一个数据类型来代表单个字符,你怎么能对组成字符串的字符进行迭代(循环)?它代表一个UTF16字符?如果你没有一种方法来表示单个字符,你就不能创建一个表示字符序列的类,对吗?谢谢。我对Java的了解还不足以理解Java.lang包在基本层面上是如何工作的,我确信这将成为一个极其愚蠢的问题。我很高兴收到了非讽刺性的回复。:-)@马修霍姆斯讽刺是有趣的,你不必被讽刺的回答所排斥:)嘲笑他们