编译问题

时间:2015-06-17 14:09:02

标签: java compilation

我在https://leetcode.com/上为Pascal的三角形编写了以下代码,我得到的错误如下:

  

第10行:错误:不兼容的类型:int无法转换为   List<List<Integer>>

    public class Solution {
        public List<List<Integer>> generate(int numRows) {
        List list;
        int  temp;
        for(int i=0;i<numRows;i++) {
            temp = (int) Math.pow(11,i);
            list.add(Arrays.asList(temp));

        }
        return temp;
    }
    public static void main(String s[]) {
        Solution solution = new Solution();
        java.util.Scanner scan = new java.util.Scanner();
        System.out.println("Enter the no.of Rows");
        int numRows = scan.nextInt();
        solution.generate(numRows);
    }
}

帮我找到解决方案。

3 个答案:

答案 0 :(得分:0)

 public List<Integer> generate(int numRows) {
    List list;
    int  temp;
    for(int i=0;i<numRows;i++) {
        temp = (int) Math.pow(11,i);
        list.add(Arrays.asList(temp));

    }
    return list;

为什么返回int List返回类型的值。请将其更改为列表。它会正确编译。

答案 1 :(得分:0)

你的答案几乎是正确的。只有少数错误。这是一个很好的:

import java.util.ArrayList;
import java.util.List;

public class Solution {
    public List<Integer> generate(int numRows) {
        List<Integer> list=new ArrayList<Integer>();
        int temp;
        for (int i = 0; i < numRows; i++) {
            temp = (int) Math.pow(11, i);
            list.add(temp);
        }
        return list;
    }

    public static void main(String s[]) {
        Solution solution = new Solution();
        java.util.Scanner scan = new java.util.Scanner(System.in);
        System.out.println("Enter the no.of Rows");
        int numRows = scan.nextInt();
        Object answer=solution.generate(numRows);
        System.out.println(answer);
    }
}

答案 2 :(得分:0)

您的方法被定义为返回List<List<Integer>>(整数列表列表),但您尝试返回一个整数。

您已在方法中创建了List,因此您应该返回该值,而不是整数temp