matlab是一个强大的数学软件,其中实现了好多的数学函数,我们使用时直接调用即可。但java中有些方法需要自己去实现。
首先来看一下matlab中一些函数。
1.sign函数
A = [1,-2,6,0];
B = sign(A);
运行结果是
sign函数
2.两个数组相加
A = [1,2,3,4];
B= [4,5,6,7];
C = A+B;
运行结果是
数组相加
3.获取一个数组当中一段区间元素
A = [1,2,3,4,5,6,7];
C = A(2:5);
运行结果:
截取数组区间元素
4.数组元素和
A = [1,2,3,4];
B = [2,3,4,5];
C = A+B;
运行结果:
数组元素和
5.两个数组相减
A = [1,2,3,4];
B = [2,3,4,5];
C = B-A;
运行结果:
数组元素差
6.一个数减一个数组,生成新的数组
A = [1,2,3,4];
C = 5-A;
运行结果:
一个数减数组
7.一个数组每个元素乘以一个数
A = [1,2,3,4];
C = 5.*A;
运行结果:
一个数乘以数组
8.一个数除以一个数组
A = [1,2,3,4];
C = 5./A;
运行结果:
一个数除以数组
9.数组平方和
A = [1,2,3,4];
C = sum(A.^2);
运行结果:
数组平方和
10.获取一个数组中最小值
A = [1,2,3,4];
C = min(A);
运行结果:
数组最小值
11.获取一个数组中最小值下标
A = [1,-1,3,4];
[C,index] = min(A);
运行结果:
最小值下标
12.生成一个数组
t = 0:0.2:1;
运行结果:
生成一个数组
13.初始化数组
A = zeros(1,5);
运行结果:
初始化数组
14.数组平均值
A=[2,3,5,6];
b= mean(A);
运行结果:
数组平均值
15.产生一个正态分布的随机数
A = randn(5);
运行结果:
正态分布随机数
16.连接数组,生成一个新的数组
A = [1,2,3,4,5];
B = zeros(1,5);
C = [B,A,B];
运行结果:
数组连接
java实现工具类
/**
* matlab中有些函数的工具类
*/
public class MathUtils {
/**
* 对应matlab中sign
* @param num
* @return
*/
public static int sig