Java 字符串连接未按预期工作

Java 字符串连接未按预期工作,java,algorithm,Java,Algorithm,我有以下代码: public boolean prontoParaJogar() throws RemoteException { int i; int j; if (this.jogadores==2) { this.jogando=1; for (i=0;i<3;i++) for(j=0;j<3;j++) { this.tabuleiro[i][j]=0;

我有以下代码:

public boolean prontoParaJogar() throws RemoteException {
    int i;
    int j;
    if (this.jogadores==2) {
        this.jogando=1;
        for (i=0;i<3;i++)
            for(j=0;j<3;j++) {
                this.tabuleiro[i][j]=0;
            }

        for (i=0;i<3;i++) {
            System.out.println("Linha "+i+": ");
            System.out.print(this.tabuleiro[i][0]+' ');
            System.out.print(this.tabuleiro[i][1]+' ');
            System.out.print(this.tabuleiro[i][2]);
            System.out.println("");
        }


        return true;
    } else {
        return false;
    }
}
public boolean prontoParaJogar()引发RemoteException{
int i;
int j;
if(this.jogadores==2){
这个。jogando=1;

对于(i=0;i,这是因为您正在将
'
添加到变量中,因为
'
是一个带有asci代码32的字符,它将32添加到数组中的零值中并打印32。您必须编写两个打印,以便按照自己的喜好格式化输出

this.tabuleiro[i][0]+' '
'
是空白字符,其ascii值为
32
。单引号表示
char
值,而不是
字符串

this.tabuleiro[i][0]+" "

将连接一个空格。

您正在添加0+32,因为“”是空格,这是32 ASCII,而不是字符串连接。更改为

System.out.print(this.tabuleiro[i][0]+" ");

在输出行中,您使用的是
+'
。这会将字符“”(字符值32)添加到tabuleiro的每个条目中。您需要使用
+'

也不要这样做:

for (i=0;i<3;i++)
    for(j=0;j<3;j++) {
        this.tabuleiro[i][j]=0;
    }
for (i=0;i<3;i++)
    System.out.println("i=" + i);
    for(j=0;j<3;j++) {
        this.tabuleiro[i][j]=0;
    }

for(i=0;i您应该向我们展示更多的代码,否则就很难弄清楚您想做什么。呃,不……这样回答很容易;)再观察一次:它打印行的时间是预期的两倍,因为该方法是RMI服务实现的一部分,并且该方法由两个客户端调用,因此代码运行了两次。@Brian Roach@Jonas Elfström+1告诉所有发现此点的人:)好眼睛的家伙:)@boro I是第一个!比Brian:d早16秒
for (i=0;i<3;i++)
    for(j=0;j<3;j++) {
        this.tabuleiro[i][j]=0;
    }
for (i=0;i<3;i++) {
    for(j=0;j<3;j++) {
        this.tabuleiro[i][j]=0;
    }
}
for (i=0;i<3;i++)
    System.out.println("i=" + i);
    for(j=0;j<3;j++) {
        this.tabuleiro[i][j]=0;
    }