Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
迭代和数组[Java]优化_Java_Arrays_Matrix - Fatal编程技术网

迭代和数组[Java]优化

迭代和数组[Java]优化,java,arrays,matrix,Java,Arrays,Matrix,我必须做一个练习,它说做一个程序,打印一个二维矩阵,T(4x4),T[n,m]=n+m 我做到了,但是现在,我想尽可能地优化它 这是我的密码: int T[][] = new int[4][4]; for (int i = 0; i <T.length; i++) { for (int j = 0; j < T[i].length; j++) { T[i][j]= i+j; System.out.print(T[

我必须做一个练习,它说做一个程序,打印一个二维矩阵,T(4x4),T[n,m]=n+m

我做到了,但是现在,我想尽可能地优化它

这是我的密码:

int T[][] = new int[4][4];
    for (int i = 0; i <T.length; i++) {
        for (int j = 0; j < T[i].length; j++) {
            T[i][j]= i+j;
            System.out.print(T[i][j]+" ");
        }
        System.out.print("\n");
    }
int T[][]=new int[4][4];

对于(int i=0;i我知道快速枚举比普通for循环快,并且在不同的博客上看到了一些用不同语言证明它的基准测试,但这正是我在web上看到的…:-)

所以

用于(对象o:阵列式组件){ }


会更快。。。比你的快。

你不能让你的代码运行得比这快,也许是为了看起来更漂亮,是的。;)有一种方法可以让它跑得更快。对所有输出使用StringBuilder,然后一次性使用System.out.println()我看到的最昂贵的操作(除了I/O)是使用
T[I][j]+“”
构建一个新字符串,而您可以使用
System.out.print(int I)
。好吧,使用StringBuilder,我所做的是节省内存,对吗?那么,这样做更快吗?你的说法是不受支持的。这也是完全错误的。“快速枚举”是Objective-C,而不是Java。是的,快速枚举是obj C,我是obj C开发人员,所以我把它命名为。。。我的意思是For In,或者For每个循环都应该比正常的For循环快。。。这就是我在任何编程语言的基准测试中看到的。我在回答中发布的代码也是Java代码,而不是obj。C