gpt4 book ai didi

java - Java 多个嵌套类

转载 作者:行者123 更新时间:2023-12-02 02:49:11 25 4
gpt4 key购买 nike

嗨,我有一个类,其中有多层嵌套类,我想知道为什么它不起作用。由于某种原因,我无法创建一个新的 StackNode,我想知道为什么会这样。

public class MultiStack {
Stack1[] arr;
int lim,numplate,index;

MultiStack(int limit, int total) {
lim = limit;
numplate = total;
int ssize =0;
if(total%lim==0) {
ssize = total/lim;
} else {
ssize = (total/lim) +1;
}
arr = new Stack1[ssize];
}

class Stack1 {
StackNode top;
int size;

class StackNode{
StackNode next;
int value;
}
}
public void push(int value){
if(arr[index].size < lim) {
push1(index);
}
}
public void push1(int index) {
arr[index].size++;
StackNode cur = new StackNode(); //here is my issue
cur.next = arr[index].top;
arr[index].top = cur;
}
}

最佳答案

Stack1 类和 StackNode 类都不是静态

因此,您需要周围类的实例来实例化它。

当您尝试实例化 StackNode 类时,您位于 MultiStack 的对象中:

public void push1(int index) {
arr[index].size++;
Stack1.StackNode cur = new Stack1().new StackNode(); // here is my issue
cur.next = arr[index].top;
arr[index].top = cur;
}

关于java - Java 多个嵌套类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44089457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com