length,length(),size()详解及区别

length属性:用于获取数组长度。

int ar[] = new int{1,2,3}

/**
* 数组用length属性取得长度
*/

int lenAr = ar.length;//此处lenAr=3
System.out.println("Arr length:"+lenAr);

length()方法:用于获取字符串长度。

String str = "Hello World Java";

/**
* 字符串用length()方法取得长度
*/

int lenStr = str.length();//此处lenStr=16
System.out.println("Str length():"+lenStr);

size()方法:用于获取泛型集合有多少个元素。

/**
* Collection是整个类集之中单值保存的最大父接口,所以使用时需要用具体子类实例化
*/
Collection<String> col = new ArrayList<String>();
col.add("Hello");
col.add("World");
col.add("Java");
/**
* 类集框架用size()方法取元素个数
*/
int sizeCol = col.size();//此处sizeCol=3
System.out.println("Col size:"+sizeCol);
  • 47
    点赞
  • 129
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这四个函数的作用都与获取数据的长度有关,但具体用法和适用范围有所不同。 1. sizeof() sizeof() 是 C/C++ 中的一个操作符,用于获取数据类型或变量在内存中所占的字节数。例如: ```c++ int a; size_t size = sizeof(a); ``` 这里 size 变量的值为 4,因为 int 类型在大多数系统上占用 4 个字节。 2. strlen() strlen() 是 C/C++ 中的一个函数,用于获取字符串的长度,不包括字符串末尾的 null 字符。例如: ```c++ char str[] = "hello"; size_t length = strlen(str); ``` 这里 length 变量的值为 5,因为 "hello" 这个字符串共有 5 个字符。 3. length() length() 是 C++ STL 中的一个函数,用于获取容器(如 std::string、std::vector 等)中元素的个数。例如: ```c++ std::string str = "hello"; size_t length = str.length(); ``` 这里 length 变量的值为 5,因为 "hello" 这个字符串共有 5 个字符。 4. size() size() 是 C++ STL 中的一个函数,用于获取容器(如 std::string、std::vector 等)中元素的个数。与 length() 函数相似,但返回值类型不同,size() 函数返回的是一个无符号整数类型(如 size_t),而 length() 函数返回的是一个有符号整数类型(如 int)。例如: ```c++ std::vector<int> vec = {1, 2, 3, 4, 5}; size_t vec_size = vec.size(); ``` 这里 vec_size 变量的值为 5,因为 vec 容器中共有 5 个元素。 总结: | 函数/操作符 | 适用范围 | 返回值类型 | 作用 | | --- | --- | --- | --- | | sizeof() | 任何数据类型或变量 | 无符号整数类型(如 size_t) | 获取数据类型或变量在内存中所占的字节数 | | strlen() | 字符串 | 无符号整数类型(如 size_t) | 获取字符串的长度 | | length() | 容器(如 std::string、std::vector 等) | 有符号整数类型(如 int) | 获取容器中元素的个数 | | size() | 容器(如 std::string、std::vector 等) | 无符号整数类型(如 size_t) | 获取容器中元素的个数 |

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值