Java 基本length和length()

Wesley13
• 阅读 444

length和length()到底有什么区别

length是属性,而length()是方法 为什么要这么回答 下面我来罗列一些列子来说明:

大家都知道我们在定义数组时:

int []arr = new int [3];
int [] arr2 = {1,2,3};

上面定义了定义了两个一维数组(数组是容器,既然是容器了length就该是属性,不知道我这么说各位是否理解),下面罗列下二维数组:

int [][]arr = new int [3][];
int [][]arr2 = {{},{}};
System.out.println(arr.length);
System.out.println(arr2.length);
3
2

我为何要罗列下二维数组,因为我想强调:数组在定义时就确定了空间大小。不管是几维。二维数组 arr[1] 这里存储的是:一个一维数组的地址(一维数组的首地址)。 所以这也说明length是个属性,(数组刚一定义就确定了该属性的大小)。

/*

补个小插曲:为什么在定义二维数组时,不用指明二维的第二个维度

Java 基本length和length()

因为二维数组存储的是一维数组的地址,定义二维数组只要说明,你要定义几个二维数组就行了

*/


下面需要解释下String类型,序列的长度为什么是length().

String 底层数据结构是 char[],这样的一个一维字符数组,因此String拥有的就是length()这个方法,而不是length这个属性。就像Collection这个集合。

//以上是个人见解,如有错误请指正。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
2年前
java将一个byte数组保存成图片存在本地
java将byte数组转换成图片,可以File和IO操作来完成。//byte数组到图片到硬盘上publicvoidbyte2image(bytedata,Stringpath){if(data.length<3||path.equals(""))return;//判断输入的byte是否为空
Wesley13 Wesley13
2年前
java 学习心得体会(一)
1.   数组有没有length()这个方法?String有没有length()这个方法?       答:数组没有length()这个方法,有length的属性。       String有length()这个方法。2.     StringsnewString("xyz");创建了几个StringObject?
Wesley13 Wesley13
2年前
AS3 数组
varfoo:Array"one","two","three";trace(foo1);//"tow",数组下标从0开始trace(foo.length);//3Array的length属性是可读可写的,这与Java不同,在Java中,数组一旦定义好长度,就无法再更改
Stella981 Stella981
2年前
JavaScript中实现函数重载和参数默认值
参数默认值是指在调用函数时,若省略了某个实参,函数会自动为该参数分配一个默认值,使得函数调用的方便性和灵活性大大提高。举个例子,比如PHP中的字符串截取函数substr(string,start,length),当不指定length时,函数将默认截取字符串中start位置到字符串结束,而如果指定了length,则截取从start位置开始的以len
Wesley13 Wesley13
2年前
Java解决硬币
classSolution{privateintdp;//构建一个一维数组来存储次数publicintcoinChange(intcoins,intamount){if(coinsnull||coins.length0|
Wesley13 Wesley13
2年前
Java开发面试题,3年工作经验的Java程序员面试经
一、Java基础部分1、使用length属性获取数组长度,public、private、protected、friendly区别2、Collection和Collections区别3、StringsnewString(‘xyz’);创建了几个object对象4、shorts1;s1s11;是否有错?5
Wesley13 Wesley13
2年前
Java几道面试题的笔记
1.Java中求数组charch\\的长度(元素的个数):ch.length;求字符串s的长度:s.length();2.arraycopy函数用于拷贝数组,定义如下:  staticvoid arraycopy(Object src,intsrcPos, Object dest,intdestPos,intlength) 
Stella981 Stella981
2年前
JS关于Array的方法介绍
Array.length:数组的一条属性。基本用法:letarray1,2,3,4,5;console.log(array.length);//5Array.prototype:数组原型console.log(Array.prototype);//ObjectArray.isArr
Wesley13 Wesley13
2年前
underscore.js 分析 第二天
Underscore源码中有这么句obj.lengthobj.length意思是typeofobj.lengthnumber,即检测obj的长度是否是数字我的理解:这么写是来检测一个对象数组的类型到底是数组还是对象。在Javascript中变量分为基本类型和引用类型,基本类型是Undefined、Null、Boo
Wesley13 Wesley13
2年前
Java基础之数组队列及Java堆外内存学习笔记[图]
Java基础之数组队列及Java堆外内存学习笔记\图\1.数组1.1数组基本概念:数组是一个容器,可以存储同一数据类型的N个数据;数组是一个数据结构,是数据结构中访问速度最快的;数组是直接通过下标进行定位;数组是属于引用数据类型(数组名中存储的是内存首地址);数组本身只有有length属性(获取数组能存储的数据个数),但是