我是使用集合的新手,对于学习如何使用集合的练习之一,我得到了一个模板文件“SetInt”和一个完整的测试文件“TestSetInt”。我知道我应该使用 retainAll() 和 addAll() 但测试类要求我编写方法。有人知道如何编写这两种方法吗?任何帮助,将不胜感激。
SetInt 是我必须添加方法的文件,如下所示:
public class SetInt
{
int[] setArray = new int[52];
public void add(int a)
{
if (a < setArray.length-2)
{
setArray[a] = a;
}
}
/* add a to the set in the correct position
*@param a the value to be added
**/
public SetInt intersection(SetInt anySet)
{
return anySet;
}
/* returns the set of integers common to both
* the set passed in as an argument and the set the
* method is called on
* @param anySet - the set to be intersected
* @return a set containing the result of the intersection
*/
public SetInt union(SetInt anySet)
{
return anySet;
}
/* returns the set of integers which are in either the
* set passed in as an argument or the set the method
* is called on
* @param anySet - one of the sets in the union
* @return a set containing the result of the union
*/
}
这是 TestSetInt,它是为我提供的一个文件,我必须运行它来查看我的方法是否正常工作:
public class TestSetInt
{
public TestSetInt()
{
SetInt test1 = new SetInt();
SetInt test2 = new SetInt();
// adding numbers to the 2 sets
for(int i = 2; i<49;i=i+3)
{
test1.add(i);
}
System.out.println();
for(int i = 2; i<49;i=i+4)
{
test2.add(i);
}
System.out.println();
// testing intersection
SetInt interx = new SetInt();
interx=test2.intersection(test1);
// testing union
SetInt unionx = test1.union(test2);
}
public static void main (String args[])
{
TestSetInt practice = new TestSetInt();
}
}