获取数组的有效长度只能遍历了吗?

做多做少不如做好 2019-11-06 03:18:18
如题,有没有什么简单一点(现成)的方法啊
...全文
308 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Z113014 2019-12-13
  • 打赏
  • 举报
回复
int [] n = new int[100];
n[0]=1;
n[1]=2;
n[2]=3;
n[3]=4;
for(int m =0;m<n.length;m++){
if(n[m]==0){
System.out.println(m);
break;
}
}
这个只能是你数组元素中没有0
  • 打赏
  • 举报
回复
引用 8 楼 qybao 的回复:
[quote=引用 7 楼 沉迷吃鸡的胖子 的回复:]
这个我明白,其实不确定长度的集合不推荐用数组!

这种问题就应该问LZ了,我只是针对他的问题做了个解答[/quote]

qybao 2019-11-06
  • 打赏
  • 举报
回复
引用 7 楼 沉迷吃鸡的胖子 的回复:
这个我明白,其实不确定长度的集合不推荐用数组!

这种问题就应该问LZ了,我只是针对他的问题做了个解答
  • 打赏
  • 举报
回复
引用 6 楼 qybao 的回复:
[quote=引用 5 楼 沉迷吃鸡的胖子 的回复:]
你这只是针对int类型,假如是Integer不就不能用了?


Integer的话也可以改filter啊,当然具体情况具体分析了
Integer[] a = new Integer[100];
a[0] = 1;
a[1] = 2;
a[2] = 3;
System.out.println(Arrays.stream(a).filter(n->n!=null).count());[/quote]

这个我明白,其实不确定长度的集合不推荐用数组!
qybao 2019-11-06
  • 打赏
  • 举报
回复
引用 5 楼 沉迷吃鸡的胖子 的回复:
你这只是针对int类型,假如是Integer不就不能用了?


Integer的话也可以改filter啊,当然具体情况具体分析了
Integer[] a = new Integer[100];
a[0] = 1;
a[1] = 2;
a[2] = 3;
System.out.println(Arrays.stream(a).filter(n->n!=null).count());
  • 打赏
  • 举报
回复
你这只是针对int类型,假如是Integer不就不能用了?
qybao 2019-11-06
  • 打赏
  • 举报
回复
用filter吧
int[] a = new int[100];
a[0] = 1;
a[1] = 2;
a[2] = 3;
System.out.println(Arrays.stream(a).filter(n->n!=0).count()); //filter选出元素不为0的数据并count统计个数
  • 打赏
  • 举报
回复
你可以创建一个可变的List,然后转换为数组,再获取长度。
  • 打赏
  • 举报
回复

像这样,数组长度100,但有效长度只有3。这个3只能遍历求吗
dkwuxiang 2019-11-06
  • 打赏
  • 举报
回复
不太明白你的意思,.length 可以获取数组长度,你指的有效是?

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧