Java中的Char vs String?

7 java string char

我今年正在学习Java作为AP计算机科学课程的一部分,当我读到"Char"和"String"时,我无法理解为什么人们会费心去使用"Char"而只能存储一个字符而不是而不仅仅是使用"字符串",并能够存储更多.简而言之,如果它只能存储单个字符,那么"char"的意义何在?

Dan*_*lan 12

人们提到记忆问题,这是有效的,但我不认为这是99%的时间非常重要的原因.一个重要的原因是Java编译器会告诉你是否犯了错误,所以你不必自己搞清楚.

例如,如果您只需要1个字符作为变量,则可以使用a char来存储该值,现在没有人可以在其中放置任何其他内容而不会出现错误.如果您使用了String替换字符串,则字符串中可能有两个字符,即使您打算永远不可能.实际上,字符串中可能有0个字符也一样糟糕.此外,所有使用the的代码String都必须说"获取字符串的第一个字符",它可以简单地说"给我字符".

一个类比(不幸的是,对你来说可能没有意义)将是,"为什么我会说Person有一个我什么Name时候可以说Person有一个列表Names?" 同样的理由适用.如果你只想Person拥有一个Name,那么给他一个Names 列表会增加很多维护开销.


Mob*_*Mon 0

因为char占用内存少!

此外,字符存储在内存中,而不是作为参考值,因此理论上访问字符的速度更快(稍后您会了解更多)

***注意:当我第一次开始编程时,我曾经有过同样的想法,当你可以使用 long 并且不必担心大数字时,为什么要使用 int 。这告诉我您正在成为一名出色的程序员!:)