这里是借助Vector,以二维数组的形式实现矩阵,并且完成矩阵相加的运算
import java.util.HashSet;
import java.util.Random;
import java.util.Vector;
public class SetTest {
// static HashSet s=new HashSet(3);
public static void main(String[] args)
{
Matrix x1=new Matrix(3,4);
Matrix x2=new Matrix(3,4);
Random r=new Random();
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
x1.set(i, j, r.nextInt(10));
}
}
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
x2.set(i, j, r.nextInt(10));
}
}
x1.print();
System.out.println();
x2.print();
System.out.println();
x1.add(x2).print();
}
}
class Matrix{
private Vector values;
private int row;
private int col;
public Matrix(int row,int col)
{
values=new Vector(row);
for(int i=0;i<row;i++)
{
Vector c=new Vector(col);
values.add(c);
for(int j=0;j<col;j++)
{
c.add(null);
}
}
this.row=row;this.col=col;
}
public void set(int row,int col,Object value)
{
Vector v=(Vector) values.get(row);
v.set(col, value);
}
public Object get(int row,int col)
{
Vector v=(Vector) values.get(row);
return v.get(col);
}
public int width()
{
return col;
}
public int height()
{
return row;
}
public Matrix add(Matrix x)
{
Matrix result=new Matrix(row,col);
for(int i=0;i<row;i++)
{
for(int j=0;j<col;j++)
{
Integer integer1=(Integer) this.get(i, j);
Integer integer2=(Integer) x.get(i, j);
result.set(i, j, new Integer(integer1.intValue()+integer2.intValue()));
}
}
return result;
}
public void print()
{
for(int i=0;i<row;i++)
{
for(int j=0;j<col;j++)
{
System.out.print(this.get(i, j)+" ");
}
System.out.println();
}
}
}