📄 mymatrix.java
字号:
//MyMatrix.java文件
public class MyMatrix //矩阵类MyMatrix
{
private int[][] table; //矩阵元素表
private int height; //矩阵的行
private int width; //矩阵的列
private void init(int m,int n) //元素随机赋值方法
{
table=new int[m][n]; //分配矩阵元素数组内存空间
for(int i=0; i<m; i++)
for(int j=0; j<n; j++)
{
table[i][j]=(int)(Math.random() * 100); //元素随机赋值
}
}
public MyMatrix(int n) //构造方法,构造方阵
{
height = n;
width = n;
this.init(height,width); //调用元素随机赋值方法
}
public MyMatrix(int m,int n) //构造方法,构造m行n列矩阵
{
height=m;
width=n;
this.init(height,width); //调用元素随机赋值方法
}
public int getHeight() //返回矩阵的行数方法
{
return height;
}
public int getWidth() //返回矩阵的列数方法
{
return width;
}
public int[][] getTable() //返回矩阵方法
{
return table;
}
public MyMatrix add(MyMatrix b) //矩阵加方法
{
if(this.getHeight()!=b.getHeight()&&
this.getWidth()!=b.getWidth())
{
System.out.println("the two matrix don't macth");
return null;
}
MyMatrix result=new MyMatrix(b.getHeight(),b.getWidth());
for(int i=0;i<b.getHeight();i++)
for(int j=0;j<b.getWidth();j++)
{
result.table[i][j]=this.table[i][j]+b.table[i][j];
}
return result;
}
public MyMatrix subtract(MyMatrix b) //矩阵减方法
{
if(this.getHeight()!=b.getHeight()&&
this.getWidth()!=b.getWidth())
{
System.out.println("the two matrix don't macth");
return null;
}
MyMatrix result=new MyMatrix(b.getHeight(),b.getWidth());
for(int i=0;i<b.getHeight();i++)
for(int j=0;j<b.getWidth();j++)
{
result.table[i][j]=this.table[i][j]-b.table[i][j];
}
return result;
}
}
// TestMyMatrix.java文件
public class TestMyMatrix //测试类
{
public static void main(String[] args)
{
MyMatrix mm1=new MyMatrix(4,4);
MyMatrix mm2=new MyMatrix(4,4);
MyMatrix mm3=new MyMatrix(4,5);
MyMatrix mm4=new MyMatrix(4,5);
MyMatrix add_result=mm1.add(mm2);
int[][] add_table=add_result.getTable();
MyMatrix subtract_result=mm3.subtract(mm4);
int[][] subtract_table=subtract_result.getTable();
System.out.println("two matrix add result:");
for(int i=0;i<add_result.getHeight();i++)
{
for(int j=0;j<add_result.getWidth();j++)
{
System.out.print(add_table[i][j]+" ");
}
System.out.println();
}
System.out.println("two matrix subtract result:");
for(int i=0;i<subtract_result.getHeight();i++)
{
for(int j=0;j<subtract_result.getWidth();j++)
{
System.out.print(subtract_table[i][j]+" ");
}
System.out.println();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -