我是否可以在任何地方找到一个ADT整数列表,我可以用它来测试我为分配问题编写的这个程序?或者有人可以告诉我如何制作一个或为我提供一个,我们将不胜感激!
/**
* Finds the Max integer from the ADT list of integers
*
* @author (Siren P)
* @version (03/12/2016)
*/
public class MaxIntegers
{
public int maxInt (ListReferenceBased aList)
{
//Declare variable for max integer
int max;
//Checks every integer in list
for(int i = 0 ; i <= aList.size(); i++)
{
if(i == 0)
{
//first element stored as max
max = aList.get(i);
}
else
{
if(aList.get(i) > max)
{
//if element is bigger than current stored element then it will be overwritten
max = aList.get(i);
}
}
}
//Returns the max integer
return max;
}
}
答案 0 :(得分:0)
您可以使用ArrayList:
java.util.List<Integer> aList = new java.util.ArrayList<Integer>();
// add some ints to the list
aList.add(1);
aList.add(2);
aList.add(3);
aList.add(4);
答案 1 :(得分:0)
我们需要ListReferenceBase
类的代码来构建列表。我的猜测是它有点LinkedList
,但我不知道该课程提供的功能。
可能这样的东西会起作用(把它放在你的MaxIntegers
课程中)
public static void main(String[] args) {
MaxIntegers test = new MaxIntegers();
ListReferenceBased testlist = new ListReferenceBased();
testlist.add(5);
testlist.add(2);
testlist.add(55);
System.out.println(maxInt(testlist));
}
除了一些旁注:
maxInt
声明为static
。这意味着你不需要一个对象来调用该方法(在这种情况下,没有理由你需要一个,这就是为什么你应该让它static
。)ListReferenceBased
将索引从0开始,那么for循环(i <= list.size()
)的条件将会过长。正确的方法是i < list.size()
。如果没有ListReferenceBased
的实施,并且它只是一个占位符,您可以在您的班级和我的示例中将其与#Linked;&#39;例如。也可以编写List<Integer>
代替,你可以允许将所有类型的列表传递给方法,他们只需要实现java.util.List
接口。