为什么String没有原始类型?

用户241924:

为什么大多数其他数据类型都没有Java的String基本类型?

乔恩:

字符串是一个对象,根本不是原始类型,只是一个字符数组。James Gosling的访谈摘录摘述了Java中根本存在原始类型的原因,这很有趣

Bill Venners: Java为什么会有原始类型?为什么不是所有事物都只是一个对象?

James Gosling:完全是效率问题。有各种各样的人都建立了以int为对象的系统。有多种方法可以做到这一点,并且所有方法都有一些非常严重的问题。其中一些速度很慢,因为它们为所有内容分配内存。他们中的一些人尝试在有时是对象的地方做对象,有时又不是(这是标准LISP系统所做的事情),然后事情变得很奇怪。有点用,但是很奇怪。

只要做到有原始和对象,它们就不同了。您解决了很多问题。

简而言之,出于效率原因,存在原始类型。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么我们将String数组作为参数传递给main()方法,为什么没有任何集合类型或包装器类型或原始类型呢?

为什么 Rust 中的原始类型之间没有隐式类型转换(强制)

当我没有在原始类型定义中定义类型类约束时,为什么要添加它?

为什么java.util.function没有为所有原始类型定义专用的功能接口?

为什么Java 8中的新java.util.Arrays方法没有对所有原始类型都重载?

为什么文字值没有类型?

为什么没有内置类型的DateTime?

为什么没有HTMLNavElement类型?

为什么Rust具有“从不”原始类型?

为什么`str`是原始类型?

为什么Java 8中没有原始BiConsumer?

为什么原始Stream没有collect(Collector)?

为什么我的代码没有返回原始消息?

为什么 zip(*) 没有恢复我的原始列表

为什么在[String:Any]类型的字典中没有隐式解包的可选内容不解包

为什么 Option[String] 类型的成员没有被序列化?

为什么原始类型不能具有带有通用返回类型的方法

为什么eclipse说null是原始类型?

为什么我为我提供的函数没有类型?

为什么Java没有字节类型后缀?

为什么getAnnotatedParameterTypes没有看到数组类型的注解?

为什么没有std :: is_struct类型特征?

为什么我的地图类型没有被 Reason 导出?

为什么我的SKTileMapNode类型的对象没有被解码?

为什么AWS ECS Fargate没有实例类型?

为什么此代码中没有类型转换异常?

为什么在枚举时类型没有重叠?

为什么Java类型参数没有下限?

为什么没有类型不匹配错误?