AirOutLet 2021-02-17 20:49 采纳率: 0%
浏览 4862

java中 return new int[0]; 的意义

/*
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,            并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

你可以按任意顺序返回答案。

*/
class Solution {
    public int[] twoSum(int[] nums, int target) {
        //用数组中的一个元素值,加上其它的元素值,看看是否等于target,已经使用过的组合就不再使用了
        for(int i = 0;i < nums.length;i++){
            for(int j = i + 1;j < nums.length;j++){
                //用一个元素值和它后面的所有元素值相加,以此类推
                if(target == (nums[i] + nums[j])){
                    return new int[]{i,j};
                }
            }
        }
        return new int[0];
    }
}
  • 写回答

6条回答 默认 最新

  • 西风逐白马 2021-02-17 23:29
    关注

    1.public int[] twoSum(int[] nums, int target),方法定义了返回int[](也就是int数组类型)

    2.return new int[0];中new int[0]代表着创建了一个长度为0的int数组,这里与int[] arr = new int[0]进行对比可能更容易理解,后者是创建了数组并将其引用赋值给变量arr,return new int[0];而这里并没有赋值操作,而是直接返回了这个数组

    3.这段代码中如果

    if(target == (nums[i] + nums[j])){

     

    return new int[]{i,j};

     

    }

    这段代码判断为true则进入if语句的执行代码,return new int[]{i,j};,也就是找到了目标值,结束方法返回目标值为数组的类型,若是if语句判断为false则不进入,直到所有循环结束都没有找到就会顺序执行,执行return new int[0],返回一个长度为0的数组,长度为0的数组也是个数组,存在引用

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献