gpt4 book ai didi

java - 从单个方法中创建和使用 ArrayList?

转载 作者:行者123 更新时间:2023-11-29 06:27:07 24 4
gpt4 key购买 nike

是否可以在方法中创建和使用 ArrayList?我想在 public int min() 方法中创建一个临时堆栈来跟踪最小值。但是,编译器提示 ArrayList add() 方法:Cannot resolve method 'add(int)' 我想那是因为我试图在同一个创建 ArrayList 的方法?

import java.util.*;

public class MinStack {
private ArrayList<Integer> data;


public MinStack() {
data = new ArrayList<Integer>();
}

public void push( int a ) {
data.add( a );
}

public int pop() {
if ( data.size() <= 0 ) {
throw new IllegalStateException();
}
return data.remove( data.size() - 1 );
}

public int size() {
return data.size();
}

public int min() {
MinStack smalls = new MinStack();
int elMin = (data.get((data.size() - 1)));
smalls.add(elMin);
while (!data.isEmpty()) {
if (data.get(data.size() - 1) < elMin)
elMin = data.get(data.size() - 1);
}
return elMin;
}

最佳答案

您不是在 Arraylist 的实例上调用 add 方法,而是在 MinStack 类对象的实例上调用它没有 add 方法。

您应该调用 push 方法,因为它在您的类中定义,它将调用 arraylist 的 add 方法。或者在 MinStack 类中使用名称 add

定义/重命名(推送) 方法

关于java - 从单个方法中创建和使用 ArrayList?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52069443/

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