java中的length和length()

今天突然想起这个长度问题,写本文权当作加深印象好了。
java里面存在神奇的length和length(),当然也提一下size()
刚开始接触,总是傻傻分不清楚,以下记录学习步骤。

  1. 先说普遍规律
    length适用于array相关,获取其长度
    length()适用于与字符串相关的对象(String,StringBuilder等)
    size()- 适用于集合对象(ArrayList,Set等)
  2. 看看length和length()干了什么
    .length一般直接访问数组的字段成员;而 .length()则是类似调用一种方法来访问字段成员
    通常情况,.length没有办法查看更底层实现,但是,.length()则可以。先看看.length()的实现
    在这里插入图片描述
    明显看出,底层还是.length的实现。然后,这个值value是什么呢?
    在这里插入图片描述
    走到这里也就不难看出了,String类型不属于8大基本类型数据,而且final修饰,但是,这个value就是String的底层实现,value相当于String的成员量参数。容易知道,String使用的是char类型的一维数据作为存储实现。回过头来看,String由char封装,.length()由.length封装,访问成员量自然用方法间接访问。
    这说明,封装类型调用其封装方法获取成员变量值,这也符合java面向对象的封装性。
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值