首页 文章

无法从if循环向另一个类发送字符串

提问于
浏览
0

我正在尝试将字符串从一个类传递到另一个类,但没有成功 . 我在研究和反复试验中意识到我需要“public static void main(String [] args){}”才能使用if语句,但是getY()会产生错误 . 我能做些什么不同的事情?

public class Testing {
public static String z;
public static void main(String[] args) {
int x = 15;

if (x >= 10)
    {
    z = "Blabla";
    }
    public static String getZ() {
    return z;
    }
  }
}

另一类是

class B {
public static void main(String args[]) {
String x = Klasatest2.getZ();

System.out.println(x);
}
}

错误:

Klasatest2.java:14:非法开始表达

public static String getZ() 

^

Klasatest2.java:14:非法开始表达

public static String getZ() {

       ^

Klasatest2.java:14:';'预期

public static String getZ() {

                    ^

Klasatest2.java:14:';'预期

public static String getZ() {

                           ^

4个错误

2 回答

  • 0

    对于初学者,你不能在方法中声明一个方法,

    public static void main(String[] args) {
    int x = 15;
    
    if (x >= 10)
        {
        z = "Blabla";
        }
        public static String getZ() {
        return z;
        }
      }
    }
    

    所以你必须确保将 getZ() 方法声明为 main(string[] args) 的OUTSIDE

    像这样,

    public class Test {
    public static String z;
    public static void main(String[] args) {
    int x = 15;
    
    if (x >= 10)
        {
        z = "Blabla";
        }
    
      }
    public static String getZ() {
        return z;
        }
    }
    

    此外,你不应该有两个 main(String[] args) 方法,因为只有其中一个方法会被调用,除非你因为某种原因决定自己调用它,这将是非常奇怪的 . 因此,如果您希望在类 Test 中设置字符串,则需要从其他类调用它的 main 方法,这可能是这样的 .

    Test.main(null);
    
  • 0

    您的应用程序只能有一个 main(String args[]) 方法 . 试试这个:

    public class Testing {
      public static void main(String[] args) {
        A a = new A("hy");
        B b = new B(a.z);
      }
    
      public class A {
        public String z;
        public A (String z) {
          this.z = z;
        } 
      }
    
      public class B {
        public B (String y) {
          System.out.println(y);
        }
      }
    }
    

相关问题