JAVA学习—矩阵运算—2021-06-20

这篇博客主要介绍了JAVA中的矩阵运算,包括加法和乘法操作,并讲解了异常处理的关键字:try、catch、finally、throw、throws。文章还提到了在构造函数中使用this关键字的情况,并给出了一个实现矩阵类Matrix的示例,该类提供了设置、获取元素、获取行列数、矩阵加法、乘法、转置以及toString方法。
摘要由CSDN通过智能技术生成

JAVA学习—矩阵运算—2021-06-20

整数矩阵的加法乘法

Exception

异常处理五个关键字:

try、catch、finally、throw、throws
格式:

try {
   
    逻辑代码块1;
} catch(ExceptionType e) {
   
    处理代码块1;
}

如果 try 语句块中发生异常,那么一个相应的异常对象就会被拋出,然后 catch 语句就会依据所拋出异常对象的类型进行捕获,并处理。处理之后,程序会跳过 try 语句块中剩余的语句,转到 catch 语句块后面的第一条语句开始执行。

如果 try 语句块中没有异常发生,那么 try 块正常结束,后面的 catch 语句块被跳过,程序将从 catch 语句块后的第一条语句开始执行。

在以上语法的处理代码块1中,可以使用以下 3 个方法输出相应的异常信息。
printStackTrace() 方法:指出异常的类型、性质、栈层次及出现在程序中的位置。
getMessage() 方法:输出错误的性质。
toString() 方法:给出异常的类型与性质。

this

在Java中,当为一个类创建了多个构造函数时,有时想在一个构造函数中调用另一个构造函数以减少代码量。这时可以使用this关键字来实现。 通常,当使用this关键字时,它意味着“这个对象”或者“当前对象”,并且它自身产生对当前对象的引用。在一个构造函数中,当给传递给它一个参数列表时,它就有了不同的意义。

它将直接的调用能够匹配这个参数列表的构造函数。

利用二维数组(double[])实现一个矩阵类:Matrix。要求提供以下方法:
(1)set(int row, int col,double value):将第row行第col列的元素赋值为value;
(2)get(int row,intcol):取第row行第col列的元素;
(3)width():返回矩阵的列数;
(4)height():返回矩阵的行数;
(5)Matrix add(Matrix b):返回当前矩阵与矩阵b相加后的矩阵;
(6)Matrix multiply(Matrixb):返回当前矩阵与矩阵b相乘后的矩阵。
(7)Matrix transpose():返回当前矩阵的转置矩阵;
(8)toString():以行和列的形式打印出当前矩阵。

代码

package matrix;

import java.util.Arrays;

/**
 * Int matrix. For efficiency we do not define ObjectMatrix. One can revise it
 * to obtain DoubleMatrix.
 * 
 * @author hengyuzuo.
 */
public class IntMatrix {
   
	/**
	 * The data.
	 */
	int[][] data;

	/**
	 *********************
	 * The first constructor.
	 * 
	 * @param paraRows
	 *            The number of rows.
	 * @param paraColumns
	 *            The number of columns.
	 *********************
	 */
	public IntMatrix(int paraRows, int paraColumns) {
   
		data = new int[paraRows][paraColumns];
	}// Of the first constructor

	/**
	 *********************
	 * The second constructor. Construct a copy of the given matrix.
	 * 
	 * @param paraMatrix
	 *            The given matrix.
	 *********************
	 */
	public IntMatrix(int[][] paraMatrix) {
   
		data = new int[paraMatrix.length][paraMatrix[0].length];

		// Copy elements.
		for (int i = 0; i < data.length; i++) {
   
			for (int j = 0; j < data[0].length; j++) {
   
				data[i][j] = paraMatrix[i][j];
			} // Of for j
		} // Of for i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值