Java Can';在Arraylist中找不到.get()
由于某些原因,Java Can';在Arraylist中找不到.get(),java,arraylist,Java,Arraylist,由于某些原因,.get()在我的代码中不是有效的方法。有人能指出错误吗?(很抱歉对象名称不正确(不打算共享此代码)) 传唤密码 import java.util.ArrayList; public class Summoned_Bin { ArrayList<Summon> Bin = new ArrayList<Summon>(); Summoned_Bin() { } void addToBin() { Summon summone
.get()
在我的代码中不是有效的方法。有人能指出错误吗?(很抱歉对象名称不正确(不打算共享此代码))
传唤密码
import java.util.ArrayList;
public class Summoned_Bin
{
ArrayList<Summon> Bin = new ArrayList<Summon>();
Summoned_Bin()
{
}
void addToBin()
{
Summon summoned = new Summon();
int index = 0;
while (Bin.get(index) != null)
{
index++;
}
Bin.add(index , summoned );
}
}
import java.util.ArrayList;
公开课传唤吴斌
{
ArrayList Bin=新的ArrayList();
传唤_Bin()
{
}
void addToBin()
{
召唤召唤=新召唤();
int指数=0;
while(Bin.get(index)!=null)
{
索引++;
}
Bin.add(索引,传唤);
}
}
召唤的_Bin不是ArrayList,因为它不扩展ArrayList类。相反,它包含一个数组列表。要知道这很好,通过组合而不是继承来增强类是可以的,但是不要试图直接在类上使用任何ArrayList方法
您有两种常见的解决方案:
get(…)
方法:
public Summon get(int index) {
return Bin.get(index);
}
编辑
正如nachokk正确地建议的那样,您需要学习和遵循,因为这样做会使其他人更容易理解您的代码。请注意(不要停留在悬停状态),请遵循并坚持!正如我所说的“为不正确的对象名称感到抱歉(没有计划共享代码)”@Programmer-Lvl1没有正确的缩进,即使对你来说也很难理解read@Programmer-Lvl1:您希望所有代码(包括“私有”代码)都遵守约定。通过遵循良好的编码习惯,您可以强制执行它们,然后它们将在您未来的代码中持续存在,甚至不必考虑它们。您能否详细介绍一下您的选项2?(得到你关于编码习惯的建议)编辑:想想别的。。。(对不起)可能重复这是怎么重复的?也许你的意思是
Bin.Bin.get(0)
?尽管以下答案中的解决方案更具建议性。
public Summon get(int index) {
return Bin.get(index);
}