Java 矩阵乘法MPI未编译

Java 矩阵乘法MPI未编译,java,matrix,mpi,mpj-express,Java,Matrix,Mpi,Mpj Express,我试图用JDK编译下面的代码,但它似乎没有编译,我在第41行得到的不是一条错误语句,即使它是 导致错误的行是: long endTime = System.currentTimeMillis(); 代码如下: import mpi.*; public class MultidimMatrix { public static final int N = 10; public static void main (String args[]){ MPI.Init(args); long s

我试图用JDK编译下面的代码,但它似乎没有编译,我在第41行得到的不是一条错误语句,即使它是

导致错误的行是:

long endTime = System.currentTimeMillis();
代码如下:

import mpi.*;

public class MultidimMatrix {

public static final int N = 10;

public static void main (String args[]){

MPI.Init(args);

long startTime = System.currentTimeMillis();

int rank = MPI.COMM_WORLD.Rank();
int size = MPI.COMM_WORLD.Size();
int tag = 10, peer = (rank==0) ? 1:0;

if(rank == 0) {
double [][] a = new double [N][N];

for(int i = 0; i < N; i++)
    for(int j = 0; j < N; j++)
     a[i][j] = 10.0;

Object[] sendObjectArray = new Object[1];
sendObjectArray[0] = (Object) a;
MPI.COMM_WORLD.Send(sendObjectArray, 0, 1, MPI.OBJECT, peer, tag);
} else if(rank == 1){
double [][] b = new double [N][N];

for(int i = 0; i < N; i++)
for(int j = 0; j < N; i++)
b[i][j] = 0;

Object[] recvObjectArray = new Object[1];
MPI.COMM_WORLD.Recv(recvObjectArray, 0, 1, MPI.OBJECT, peer, tag);
b = (double[][]) recvObjectArray[0];

for(int i = 0; i < 4; i++){
for(int j = 0; j < N; i++)

long endTime = System.currentTimeMillis();
System.out.print(b[i][j]+"\t");
System.out.println("\n");
System.out.println("Calculated in " +
                           (endTime - startTime) + " milliseconds");
    }
    }
          MPI.Finalize() ;
        }
      }
导入mpi.*;
公共类多重矩阵{
公共静态最终整数N=10;
公共静态void main(字符串参数[]){
MPI.Init(args);
long startTime=System.currentTimeMillis();
int rank=MPI.COMM_WORLD.rank();
int size=MPI.COMM_WORLD.size();
int tag=10,peer=(秩==0)?1:0;
如果(秩==0){
double[]a=新的double[N][N];
对于(int i=0;i
非常感谢您的帮助

你有

for(int j = 0; j < N; i++)
for(int j=0;j
应该是

for(int j = 0; j < N; i++) {
for(int j=0;j

您应该保持源代码格式正确-大多数IDE都可以自动执行此操作(保存或通过键盘命令)。这个问题在格式化后很明显。

神圣的代码格式化蝙蝠侠!你能尝试
导入java.lang.*;
?仍然收到错误。编辑你发布的代码,正确地重新格式化,然后再次发布-也许我们可以帮上忙。目前,可怕的未格式化代码和“收到错误”没有帮助的动机。这是否导致long-endTime=System.currentTimeMillis();problem@user3411002-你试过了吗?