当前位置: 首页 > 知识库问答 >
问题:

错误:不兼容的类型:boolean不能转换为list

隆钊
2023-03-14

我得到以下错误。第15行:错误:不兼容的类型:boolean不能转换为List Integer.toString()返回一个字符串实例,我将它添加到字符串列表中。为什么它给出了布尔不能转换为错误。因为返回值是字符串,而我要添加的值也是字符串。

在此输入代码

class Solution {
  public List<String> findMissingRanges(int[] nums, int lower, int upper) 
  {
    List<String> res=new ArrayList<String>();
    if(nums.length==0
    {
        if(upper-lower==2)
        {
            //String a=Integer.toString(lower+1);
            //res.add(a);
            res.add(Integer.toString(123));
        }
        else if(upper-lower>2)
        {

            return res.add(Integer.toString(lower)+">"+Integer.toString(upper));
         }   
    }

    int r=upper;
    boolean flag=false;
    for(int i=0;i<nums.length;i++)
    {

        if(i==0 && nums[i]-lower>=2 && res.size()==0)
        {
            upper=nums[i];
            flag=true;
        }
        else if(i!=nums.length-1)
        {
            upper=nums[i+1];
            lower=nums[i];
        }
        if(i==nums.length-1)
        {
            lower=nums[i];
            upper=r;
        }
        if(upper-lower==2)
        {
            //int temp=lower+1;
            Integer temp=new Integer(lower+1);
            res.add(temp.toString());
            if(i==0 && flag==true)
            {
                i--;
                flag=false;
            }
        }
        else if(upper-lower>2)
        {
            int a=lower+1;
            if(i==0 && flag==true)
            {
                i--;
                a=lower;
                flag=false;    
            }
            int b=(i==nums.length-1)?upper:upper-1;
            String subRes=a+"->"+b;
            res.add(subRes);


        }

    }
    return res;

  }
}

共有1个答案

朱修德
2023-03-14

您正在执行返回res.add(...);add方法返回一个布尔值(实际上,我只是出于好奇,它似乎总是返回true)。

如果要返回列表,只需执行以下操作:

res.add(...);
return res;
 类似资料: