查看: 1476| 回复: 5
跳转到指定楼层
上一主题 下一主题
收起左侧

二维数组的null check

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
如果我们有一个input 是: int[][] board, 在开始做null check的时候,已经有了 if (board.length ==0) return null;  后面还要 if (board[0].length==0)吗?是不是board.length==0已经包含了后面这个?或者说,如果board.length!=0, board[0]有可能等于0吗?谢谢

上一篇:【电子书分享】EPI C++ 版
下一篇:纯抱怨一下刷题
🔗
yuki0715 2018-8-18 23:42:20 | 只看该作者
全局:
不需要,紫薯紫薯
回复

使用道具 举报

🔗
davidtai 2018-8-18 23:59:10 | 只看该作者
全局:
board.length == 0 说明里面没东西,如果你尝试提取board[0],会出现index error
board.length != 0 说明已经init过size了, 但board[0]是可以null的,因为int board[][]里面存的是一个list of address,address可以是null
eg: c++ 来说 int ** board = new int*[ size ], 这个时候你可以check 0 ~ size-1, 全都是null
p.s. check null最好用null不要用0
回复

使用道具 举报

🔗
fropen 2018-8-19 01:41:47 | 只看该作者
全局:
可能等于0,甚至null,严格说来要想你的程序健壮需要check null及0。比如{{1,2,3},null,{4,5},{}}是可以赋给一个二维数组变量的,如果不check就会nullexception。
leetcode上做题只检查第一个元素是否为null和长度就足够了
回复

使用道具 举报

🔗
vtiaocao 2018-8-19 03:41:53 | 只看该作者
全局:
的确实际上是可以有[[1],null,[],null]这种奇妙的数组的

但一般不操心太多这个
没见过谁因为这个而挂
挂的更多是因为算法不会/写的部分不熟/看不懂题目/没有交流/等等等等

zszs
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表