Java整型集合类练习
定义一个整型集合类,这个类型的对象可以存储10个20-80之间的整数,即它的内部有一个整型数组存储数据。编程:
1、判断两个这个类对象s1,s2是否相等。
2、输出两个集合对象的交集。
3、输出两个集合对象的并集。
4、将一个整型数据插入到一个集合对象中。
5、从一个集合中删除某一个元素。
第一种解法:数组+for
package hello;
public class leng
{
int a[];
int b[];
leng(int []a,int []b) //带参数的构造函数;
{
this.a=a;
this.b=b;
}
void Equal(int e[],int f[]) //判断两个数组是否相等,并输出交集
{
System.out.print("\n交集为:");
int count = 0;
for(int j=0;j<10;j++)
{
for(int h=0;h<10;h++)
{
if(e[j]==f[h])
{
count++;//统计两个数组中相等的数的个数
System.out.print(e[j]+" ");//把相等的元素拿出来放在交集输出来
break;
}
}
}
if(count==10)//两集合元素完全相等的情况
{
System.out.print("\nS1=S2");
}
else
{
System.out.print("\nS1!=S2");
}
}
//思路:先输出一个数组,再输出另一个数组中不在该数组中的元素即为并集。
//例如:int[] a = {1,2,3};int[] b = {2,3,4};先输出1,2,3,又4在b中且不在a中,则输出4.
void Union(int e[],int f[])//求并集的方法
{
System.out.print("\n并集为:");
int flag=0;
for(int i=0;i<10;i++)
{
System.out.print(e[i]+" ");//输出e数组的元素
}
//注意此循坏的for作业的范围。
for(int j = 0;j<10;j++)
{
for(int h = 0;h<10;h++)
{
if(f[j]==e[h])
{
flag++;
}
}
if(flag==0)
{
System.out.print(f[j]+" ");
}
else
{
flag=0;
}
}
}
void Insert(int a,int b[])//将整数插入到集合a中的方法
{
int c[];
c = new int[11];
for(int i=0;i<10;i++)
{
c[i]=b[i];
}
c[10]=a;
System.out.print("\n将整数"+a+"插入到集合a中后的结果为:");
for(int j :c)//高级for循环。格式:for(要遍历的对象的元素的数据类型 变量名 : 要遍历对象的名字)
{
System.out.print(j+" ");
}
}
void Del(int a,int b[