是否有原因导致某些包装类与不同大小写的基元具有相同的名称(即 boolean/Boolean),而有些则不然(即 int/Integer)?
我不想发表意见,但想知道原因是否基于相关的设计决策,以解决似乎不一致的问题。
最佳答案
这可能是因为 Java 的创建是为了吸引 C/C++ 开发人员。
int
来自 C++,它取自 C。
boolean
与 C99 之前的 typedef 的 bool
不同,首次在 ALGOL 60 中使用。 C++ 有一个单独的数据类型,称为 bool
。然而,我不认为 ALGOL 60 实际上有“boolean”这个名字。它以乔治· boolean (George Boole) 命名,他在 19 世纪中叶首次定义了代数逻辑系统。
至于为什么自动装箱的类名与原始名称不同,原始名称已经存在,就像我所描述的那样。由于您可能会在代码中难以区分 int
和 Int
之间的区别,因此它变得更加明确。在 Java 中,按照惯例,类名采用驼峰命名法。因此,Integer 被拼写出来并大写。
关于java - 为什么某些 Java 包装类的名称与其原始类型不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22052113/