「java的矩阵转二维数组」java用二维数组计算矩阵乘法

博主:adminadmin 2023-03-20 12:26:05 276

本篇文章给大家谈谈java的矩阵转二维数组,以及java用二维数组计算矩阵乘法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java中怎么把矩阵读入二维数组啊?

public class Test {

//转换为line*column数组

public void input(int[] datas,int line,int column){

int[][] arr = new int[line][column];

int l=0;

for(int i=0;iline;i++){

for(int j=0; jcolumn; j++){

arr[i][j] = datas[l];

l++;

}

}

//输出测试

for(int i=0;iline;i++){

for(int j=0; jcolumn; j++){

System.out.print(arr[i][j] + " ");

}

}

}

public static void main(String[] args){

int[] datas = {1,2,3,4,5,6,7,8,9};

Test t = new Test();

t.input(datas, 3, 3);

}

}

java二维数组矩阵行列转换,提示第13行出错。

这个肯定会有数组下标越界异常的 。 你的array 是4*4的数组 也就是4行4列

你的brray是4*3的数组 是4行3列 所以你后面赋值的时候肯定会有越界。你要好好想想要怎么调。

Java如何输入二维矩阵并存储到二维数组中

最不严谨的写法(但是可用)下列方法可以不需知道二维数组的宽度和长度,但是不能直接保存,而是输入完成之后才能保存,如果需要更完善的方法,则先输入宽度与长度,然后再输入字符,可实现:

public static void main(String[] args) throws Exception {

        Scanner scanner = new Scanner(System.in);

        ArrayListString list = new ArrayList();

        int maxCol = 0;

        while (true) {

            String line = scanner.nextLine();

            if (line.equals(" "))

                break;

            int l = line.length();

            if (maxCol  l) {

                maxCol = l;

            }

            list.add(line);

        }

        scanner.close();

        char[][] chars = new char[list.size()][maxCol];

        int i = 0;

        for (String line : list) {

            chars[i++] = line.toCharArray();

        }

        System.out.println("Print your input: ");

        for (char[] aChar : chars) {

            System.out.println(new String(aChar));

        }

    }

输入:

***@*

*@@*@

*@**@

@@@*@

@@**@

@@@@@

如果想结束,最后一行,输入一个空格" ",然后回车结束。

java中从键盘输入一个4行4列的实数矩阵到一个二维数组中,后求主对角线上元素及副对角线上元素之积

#include iostream

using namespace std;int main()

{

double a[4][4],sum=1,t; //为什么用double? 因为题目是数矩阵,不知道是不是实数矩阵的意思.所以用了double.//如果是整数请改成int

for(int j,i=0;i4;++i) //输入矩阵,并求出对角线的乘积.

{

for(j=0;j4;++j)

{

cina[i][j];

if(i==j) //求主对角线各元素的乘积;

sum*=a[i][j];

}

}

cout"原矩阵:"endl;

for(i=0;i4;++i)

{

for(j=0;j4;++j)

couta[i][j]" ";

coutendl;

} cout"\n对角线乘积为:"sumendl; /*转置矩阵.*/

for(i=0;i=3;++i)

{

for(j=0;j=i;j++)

{

t=a[i][j];

a[i][j]=a[j][i];

a[j][i]=t;

}

}

cout"矩阵转置后"endl;

for(i=0;i4;++i)

{

for(j=0;j4;++j)

couta[i][j]" ";

coutendl;

}

return 0;

}运行时截图:第一行是输入. 共16个数输出对角线乘积,以本题为例就是1*6*11*16;另外转置矩阵就是将行列互换..

java的矩阵转二维数组的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java用二维数组计算矩阵乘法、java的矩阵转二维数组的信息别忘了在本站进行查找喔。