java 矩阵的运算
首先需要引入包Jama-1.0.2.jar 这个包下封装的对矩阵运算的方法,包括矩阵的加减乘除逆运算等
包下载地址:https://math.nist.gov/javanumerics/jama/ 英语好的也可以看看api介绍
package test;
import Jama.Matrix;
public class Test {
public static void main(String[] args) {
//创建2个二维数组
double[][] a={{1,2,3},{4,5,6},{7,8,9}};
double[][] b={{4,5,6},{7,8,9},{10,11,12}};
//将数组转换成Matrix类型 new Matrix() 要求必须是double类型
Matrix A = new Matrix(a);
Matrix B = new Matrix(b);
//打印改数组 参数: 第一个是每一列的宽度,第二个是保留小数点位数
//A.print(0, 0);
//矩阵的操作
//相加 需要2个矩阵纬度一致,否则会报错,需要补零
Matrix plus = A.plus(B);
//相减
Matrix minus = A.minus(B);
//相乘
Matrix times = A.times(B);
//相除
Matrix division = A.arrayLeftDivide(B);
//转置
Matrix m1 = A.transpose();
//求逆 (前提是可逆的)
//Matrix m2 = A.inverse();
//set方法
A.set(0, 0, 10);//设置第1行第1列值为10
//get方法
System.out.println(A.get(0, 0));//第1行第1列的值
/*
* 函数getMatrix(0,2,0,0)表示取矩阵第一列元素,
* 第1、2个参数表示行的起始和结束(即从第一行到第三行),
* 第3、4个参数表示列的起始和结束(即从第0列到第0列)。
*/
A.getMatrix(0, 2, 0, 0).print(0, 0);
//拷贝
Matrix copy = A.copy();
//克隆
Matrix clone = (Matrix) A.clone();
}
}
java 矩阵的运算的更多相关文章
- JAMA:Java矩阵包
原文链接:JAMA:Java矩阵包 API文档链接:线性代数Java包 JAMA jama是一个非常好用的java的线性代数软件包.适用于日常编程可能碰到的各种矩阵运算问题,提供了一个优雅的简便的解决 ...
- java矩阵包jama的简单操作
本文转自http://www.cnblogs.com/zangbo/p/5622351.html 一.jama简介 Jama是一个基本的线性代数java包.包括一个基本的Matrix类和5个矩阵分解类 ...
- Java的位运算 待整理
位运算:二进制运算 Java的异或运算^ 真^假=真 假^真=真 假^假=假 真^真= 假,这四个是在网上copy的例子,真是1,假是0 但它却是说明了Java异或运算的基本法则,那就是:只要两个条件 ...
- C#的winform矩阵简单运算
C#的winform矩阵简单运算 程序截图 关键代码 using System; using System.Collections.Generic; using System.ComponentMod ...
- HDU 2276 Kiki & Little Kiki 2(矩阵位运算)
Kiki & Little Kiki 2 转载自:点这里 [题目链接]Kiki & Little Kiki 2 [题目类型]矩阵位运算 &题意: 一排灯,开关状态已知,每过一秒 ...
- java 取模运算% 实则取余 简述 例子 应用在数据库分库分表
java 取模运算% 实则取余 简述 例子 应用在数据库分库分表 取模运算 求模运算与求余运算不同.“模”是“Mod”的音译,模运算多应用于程序编写中. Mod的含义为求余.模运算在数论和程序设计中 ...
- 斐波那契数列F(n)【n超大时的(矩阵加速运算) 模板】
hihocoder #1143 : 骨牌覆盖问题·一 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 骨牌,一种古老的玩具.今天我们要研究的是骨牌的覆盖问题: 我们有一个 ...
- Java之整数运算
Java的整数运算遵循四则运算规则,可以使用任意嵌套的小括号.四则运算规则和初等数学一致.例如: public class Main { public static void main(String[ ...
- Matlab矩阵学习三 矩阵的运算
Matlab矩阵的运算 一.矩阵的加减 在matlab中,矩阵的加减和数的加减符号一样,都是"+"和”-“,不同的是两个进行运算的矩阵维度必须相同 二.数乘 三.乘法 矩阵乘法 ...
随机推荐
- python:科学计数法转化为浮点型数据
def as_num(x): y='{:.5f}'.format(x) # 5f表示保留5位小数点的float型 return(y) 实验一下 as_num(1.2e-4) In [3]:as_num ...
- 解决autowaired注入时机问题
package com.haiyisoft.loveLifeWeb.config; import javax.annotation.PostConstruct; import org.springfr ...
- 左键双击关闭pagecontrol中的一个分页即一个tabsheet,功能像遨游浏览器一样
左键双击关闭pagecontrol中的一个分页即一个tabsheet,功能像遨游浏览器一样 procedure TfrmServerSetup.PageControl1MouseDown(Sender ...
- 升ttttttt
升ttttttt 升级日志小书匠 版本号 新功能 修改
- Session中的方法概述
一.操作实体对象 delete()把持久化或游离转为删除状态 save()把临时状态变为持久化状态(交给Sessioin管理) saveOrUpdate()把临时或游离状态转为持久化状态 update ...
- 树莓派 Raspberry Pi 4,.net core 3.0 ,Avalonia UI 开发
虽说.net core3.0已经可以用于开发wpf和winform程序,可是遗憾的时目前这core下的wpf还是只能运行在windows下,想要在linux下运行wpf估计还要等一段时间. Avalo ...
- Vue路由的跳转方式
Vue中路由的跳转方式 一.<router-link to=''></router-link> Header.vue <template> <header&g ...
- Django-给视图加装饰器
给FBV加装饰器 FBV:function based view FBV本身就是一个函数,所以跟普通函数加装饰器是一样的 # 装饰函数是要在APP文件中定义,本例是在app01\templatetag ...
- 如何为根分区扩容(centos7为例)
linux系统所有的文件都是存放在根分区中的,如果根分区容量即将耗尽,我们就需要给根分区扩容,我们可以使用lsblk命令来查看,系统的根分区实际是逻辑卷,所以想要扩展根分区只要将逻辑卷扩容就可以了.此 ...
- Cobalt Strike DLL用于永恒之蓝注入
PDF下载:blob:https://www.52stu.org/9afe109c-f95f-4cb3-a180-90d469a1d001 我们在对存在MS17010的漏洞主机进行DLL注入的时候,一 ...