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

克隆一个LLL并增加java中的每个元素[重复]

乐正迪
2023-03-14

我正在尝试编写一个函数incrList(L, x),它递归地复制给定的线性链表L,并以常量值x递增。当我在终端编译时,我得到了IntList@6ff3c5b5,这是一个内存位置,而不是实际的列表。我只想更改函数incrList本身以提供正确的输出。

public class IntList {
    public int first;
    public IntList rest;

    public IntList(int f, IntList r) {
        first = f;
        rest = r;
    }
}

public class Lists1Exercises{

 
    public static IntList incrList(IntList L, int x) {
        if (L == null){
           return null;
        }else {
           IntList head = new IntList(L.first+x, null);
           head.rest = incrList(L.rest, x);
           return head;
        }
    }
public static void main(String[] args) {
        IntList L = new IntList(5, null);
        L.rest = new IntList(7, null);
        L.rest.rest = new IntList(9, null);


       
        System.out.println(incrList(L, 3));
    }
}

共有2个答案

陈铭晨
2023-03-14
public class IntList {
    public int first;
    public IntList rest;

    public IntList(int f, IntList r) {
        first = f;
        rest = r;
    }

    @override
    public String toString() {
        // or whatever you want to print
        return "First: " + first + " | Rest: " + rest;
    }
}

默认情况下。toString()返回一个字符串,该字符串由对象作为其实例的类的名称、at符号字符“@”和对象哈希代码的无符号十六进制表示形式组成。

但是您可以使用@overder更改它并返回您想要的任何内容(通常是有意义的内容)。

吕俊哲
2023-03-14

您需要覆盖intlist类中的toString方法或编写一个从intlist转换为字符串的方法。您正在返回一个对象,默认情况下它们打印为内存中的位置。

 类似资料:
  • 为简单起见,我有2个字符串列表,我需要将字符串连接到一个列表中并创建另一个列表。例如—— 我想要输出为 我可以使用正则for循环来实现这一点。但不知道如何继续使用java8 我试图让自己思考nJava8:-)

  • 我正试图用react JS呈现一个项目列表。由于我的列表项相对复杂,我创建了一个简单的小提琴来陈述我的问题。 我如何修复新添加项目的渲染时间?或者只是react js的工作方式。 这里是我的主要反应组分简化。 并且ReactStreamPost和ReactStreamActivity在这一点上可以是无状态组件。像

  • 问题内容: 我正在尝试找到一种方法来加载JSON页面以显示我当前拥有的内容。但是我试图在每个元素中逐渐消失吗?有谁熟悉这样做的方法吗? 淡入淡出每个元素的时间? 这是我的代码示例,我正在使用jquery框架。 代码:http://pastie.org/343896 问题答案: 好了,您可以设置淡入淡出功能来触发“下一个”。 但是计时器可能是一个更好的系统,或者是将它们全部收集,将它们放入一个数组中

  • 我被分配了一项编程任务,但我被卡住了。其说明如下: 有一个名为“秘密圣诞老人”(给他们礼物)的游戏,有很多孩子参加。对于每个参与的孩子,都有一个来自参与孩子的秘密圣诞朋友。我必须编写一个程序,为每个参与的孩子挑选一个秘密的圣诞老人朋友。 示例:如果Bob,Alice,John和George是参与的孩子,在随机选择之后, 输出可能看起来像 具有相同输入的连续两次程序运行不应有相同的结果。 我的想法是

  • 假设我有两个数组,和,其中是的子集: 我想返回如下数组: 如果只是一个数字,那就足够简单了(),但我尝试了y中的等效

  • 给定一个列表{x_i},我想要找到从每个元素开始的最长的递增子序列,使得起始元素包含在子序列中。 最明显的方法是对每个元素执行通常的最长递增子序列算法,给出O(n^2logn)。这能打吗?