为了账号安全,请及时绑定邮箱和手机立即绑定

通过Java中的方法传递变量

通过Java中的方法传递变量

POPMUISE 2021-05-08 14:12:11
我在这里寻求一些已解决了多个小时的问题的帮助。在实践中,我希望能够通过矩阵中的方法传递变量“ j”和“ k”。问题在于传递它们,在不了解其原因的情况下,当它们进入if时不会被“捕获”。实际上,如果我尝试在if之前打印'r'和'c',它们会匹配。我不明白我在哪里错了,因为if里面的其他东西工作正常,但是当我尝试在if里面打印'r'和'c'时,它们总是变成0。按钮创建:Integer[] x = {10, 70, 130, 190, 250, 310, 370}; Integer[] y = {80, 140, 200, 260, 320, 380};    for (int i = 0, k = 0, j = 0; i < 42; i++, j++) {        if (j % 7 == 0 && i != 0) { j = 0; k++; }        lblCircles[i] = new JLabel(new ImageIcon(this.getClass().getResource("vuoto.png")));        lblCircles[i].setBounds(x[j], y[k], 50, 50);        lblCircles[i].setName("vuota");        lblCircles[i].addMouseListener(new MouseAdapter() {              public void mouseClicked(MouseEvent e) {                for (int i = 0; i < 42; i++) {                    for (int j = 0; j < 6; j++) {                        for (int k = 0; k < 7; k++)                            if (e.getSource() == lblCircles[i] && choose == 1) lblClickedPlayer(lblCircles[i], j, k);                    }                }            }        });        frame.getContentPane().add(lblCircles[i]);    }方法 :public void lblClickedPlayer(JLabel lbl, int r, int c) {    if (n == 0 && "vuota".equals(lbl.getName())) {        n = 1;        lbl.setIcon(new ImageIcon(this.getClass().getResource("red.png")));        lbl.setName("piena");        tbl[r][c] = 1;        System.out.println("tbl[" + r + "][" + c + "] = " + tbl[r][c]);    } else if (n == 1 && "vuota".equals(lbl.getName())) {        n = 0;        lbl.setIcon(new ImageIcon(this.getClass().getResource("yellow.png")));        lbl.setName("piena");        tbl[r][c] = 2;        System.out.println("tbl[" + r + "][" + c + "] = " + tbl[r][c]);    }}先谢谢您的帮助。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 159 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信