「java矩阵溢出」java整数溢出
本篇文章给大家谈谈java矩阵溢出,以及java整数溢出对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java 矩阵问题
- 2、在java中如何用类和对象的方法来实现矩阵的输出
- 3、java 矩阵过大 无法加载 但是还要使用matrix怎么办
- 4、java矩阵问题,高手请进
- 5、MATLAB输入60000*60000的矩阵溢出该怎么处理
- 6、用JAVA写一个矩阵类
java 矩阵问题
页面方面 你可以通过一个表格来实现矩阵
然后当提交时利用javascript把矩阵数据组织成JSON数据格式,传送到后台,后台解析JSON入库。
简单来讲就是这样了,
前台:需要你用javascript实现一个可以加行加列的表格。
后台:解析JSON的话有现成的jar包,然后就是动态拼SQL了。
如果你是的是hibernate的话后台需要横表与纵表的转换,Bean的属性应该是
1、行号
2、列号
3、值
好像说的有点混乱,呵呵
在java中如何用类和对象的方法来实现矩阵的输出
在数学上,矩阵是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。
所以你可以直接用二维数组来表示一个矩阵。不过如果要用类的话,如下:
class Matrix{
int x;
int y;
int[][] num;
Matrix(int x,int y){
this.x = x;
this.y =y;
}
}
public class Test{
public static void main(String[] args){
Matrix m = new Matrix(2,3);
m.num = new int[][]{{0,4,0},{5,3,0}};
for(int i = 0 ; i m.x ; i++){
for(int j = 0 ; j m.y ; j++){
System.out.print(m.num[i][j]);
}
System.out.println();
}
}
}
java 矩阵过大 无法加载 但是还要使用matrix怎么办
可以在main运行的时候设置内存,api一般不会限制矩阵的大小,还不行就换走了语言吧python的numpy包专门算这些的
java矩阵问题,高手请进
不就一个二维数组么,输入后转换成二维数组,后面的处理就是在二维数组上扫描(通过坐标关系)
MATLAB输入60000*60000的矩阵溢出该怎么处理
这种大矩阵问题,不能单纯地按照矩阵来进行存储,比如你现在的矩阵,一共个元素,如果按照32位浮点数来存储,一共占用内存365M左右,这个数据应该是超过你的虚拟内存(virtual memory),你说的2GB内存是你的物理内存。具体怎么解决我不太清楚,不过可以给你一点小建议:
第一种方法:可以查看一下MATLAB的数据内存管理,参看help memory或者在help文档中,在index下查看memory的具体命令。
第二种方法:改变矩阵的存储方法,这就需要恰当地分析矩阵的元素,选择合适的存储方法,在在大规模的场运算中,是最基本的方法和技术,最新的ANSYS,据说能够处理数上百万个自由度,如果单纯按照矩阵来存储这些求解问题的节点矩阵,那需要的空间简直是无法想象。所以改变矩阵存储方法,是最行之有效地.
查找matlab根路径.在matlab命令行中敲入:matlabroot
显示根路径,如:C:\MATLAB7
2.查看当前Java虚拟机最大堆内存, 敲入:java.lang.Runtime.getRuntime.maxMemory
3.查看Java虚拟机版本.敲入:version -java
4.在 $MATLAB\bin\$ARCH 路径下新建java.opts文件.
$MATLAB是根路径,例如C:\MATLAB7
$ARCH是系统架构.例如win32,则在C:\MATLAB7\bin\win32下新建java.opts文件.
5.用记事本打开java.opts文件,
对于不同的版本的Java虚拟机,输入:
The following table shows the default settings MATLAB uses for versions of the JVM:
JVM Initial Heap Size Max Heap Size
1.6.0 -Xms64m -Xmx128m (32-bit)
-Xmx196m (64-bit)
1.5.0 -Xms64m -Xmx96m (32-bit)
-Xmx128m (64-bit)
1.4.2 -Xms16m -Xmx96m
1.3.1 -Xms -Xmx
1.2.2 -Xms -Xmx
1.1.8 -ms -mx
例如我的Java是1.4.2,在java.opts文件写入-Xmx96m,保存就ok啦
如果输入错误就报错:warning : Failed to start to Java Virtual machine
6. 重启matlab,敲入java.lang.Runtime.getRuntime.maxMemory
显示最大内存改变,设置成功.
用JAVA写一个矩阵类
昨天刚帮一个网友改编的,输出矩阵并且在矩阵求幂后输出矩阵的一个类,直接可以运行。
注释都有的。希望你用的得到。import java.util.Scanner;
public class JuZhen {
//定义计算方法
public static int calc(int x, int y,int score){
if(x==0 y==0){
score = 0;
}else {
score = 1;
}
return score;
}
//输入矩阵
public static void shuru(){
Scanner input = new Scanner(System.in);//Scanner是用来接纳系统控制台输的字符串的
System.out.print("请输入矩阵的阶数:");
int n = input.nextInt(); //取一个输入的字符赋值给n
int M[][] = new int[n][n]; //定义数组维数.初始化数组,定义了一个双向的长度为
//n的
System.out.print("请输入矩阵的的值(0-1):");
for(int i=0;iM.length ;i++){ //不能以0开始
for(int j=0 ;jM[i].length ; j++){
M[i][j] = input.nextInt();
}
}
System.out.println("你输入的矩阵为:");
for(int i=0;iM.length ;i++){ //显示矩阵
System.out.print("\n");
for(int j=0 ;jM[i].length ; j++){
System.out .print(M[i][j] + "\t") ;
}
}
}
//仅仅是一个求幂的递归。
int myPow(int x, int y) {
int pow = 0;
if (y 0) {
pow = x * myPow(x, y - 1);// 2,3//2*2,3-1
}
if (y 0) {
pow = 1 / x * myPow(x, y + 1);
}
if (y == 0) {
pow = 1;
}
return pow;
}
//程序入口
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("请输入矩阵的阶数:");
int n = input.nextInt();//这个相当于确定行数。
int M[][] = new int[n][n];
//定义数组维数
System.out.print("请输入矩阵的的值(0-1):");
for(int i=0;iM.length ;i++){ //外循环表示行,在外循环已知的情况下去填内循环,内循环表示列
for(int j=0 ;jM[i].length ; j++){
M[i][j] = input.nextInt();
}
}
int temp[][] =new int[n][n];
int m[][] =new int[n][n];
System.out.println("你输入的矩阵为:");
for(int i=0;iM.length ;i++){ //显示矩阵
System.out.print("\n"); //执行完外循环也就是打印出一行后换行
for(int j=0 ;jM[i].length ; j++){
temp[i][j] = M[i][j] ; //赋给矩阵temp
System.out .print(M[i][j] + "\t") ;//执行完内循环也就是一列时空两格。\t为tab键起退格作用
}
}
System.out.print("\n\n你想求几次方:");
int c =input.nextInt(); //获得幂次
for (int k=0; kc;k++){ //最外层的循环和里边的两层循环也就是二维数组里的每个都有交集,也就是每个都要求幂
for(int i=0 ; iM.length; i++){
for(int j=0; jM[i].length ;j++){
m[i][j]= new JuZhen().myPow(temp[i][j],c);
}
}
}//for k
for(int i=0;im.length ;i++){ //显示矩阵
System.out.print("\n");
for(int j=0 ;jm[i].length ; j++){
System.out .print(m[i][j] + "\t") ;
}
}
}//main
}//class JuZhen
java矩阵溢出的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java整数溢出、java矩阵溢出的信息别忘了在本站进行查找喔。