如何在Java中调用类

时间:2010-10-25 19:44:37

标签: java

有两个字符串,String1 = hello String2 = world,我想调用一个Hello类并发送给两个字符串。该类应返回一个布尔值和一个字符串。如果布尔值为true,则应该执行以下操作:

 System.out.println("Hello to you too!");

有人可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

首先,术语问题:你不能“叫一个班级”。您可以在类上调用 方法 ,例如:

someObject.someMethod(string1, string2);

更重要的是,您无法从方法中返回两个不同的值。您当然可以在对象中存储两个不同的值,并从不同的方法返回它们。也许是一个类:

public class Foo {
    protected boolean booleanThing;
    protected String stringThing;

    public void yourMethod(String string1, String string2) {
        // Do processing
        this.booleanThing = true;
        this.stringThing = "Bar";
    }
    public String getString() {
        return this.stringThing;
    }
    public boolean getBoolean() {
        return this.booleanThing;
    }
}

将用作:

someObject.yourMethod(string1, string2);
boolean b = someObject.getBoolean();
String s = someObject.getString();

尽管如此,这可能根本不是解决实际问题的最佳方法。也许你可以更好地解释你想要完成的事情。也许抛出一个Exception比尝试返回一个布尔值更好,或者可能完全是另一个解决方案。

我们拥有的细节越多越好。

答案 1 :(得分:0)

你应该检查你对类的定义,但是现在我会假设这就是你的意思,如果这不是你想要的那样评论:

public class Hello {
private final String first;
private final String second;

public static void main(String[] args) {
    String s1 = "Hello";
    String s2 = "World";
    Hello h = new Hello(s1,s2);
    if(h.isHelloWorld()) {
        System.out.println("Hello to you too!");
    }
}
private Hello(String first, String second) {
    this.first = first;
    this.second = second;
}

private boolean isHelloWorld() {
    return (first.equals("Hello") && second.equals("World"));
    //If that scares you then do this instead: 
    /**
    if(first.equals("Hello") && second.equals("World") {
        return true;
    } else { return false; }
    **/
}
}

当你运行这个程序时,它总是打印“你也好!”,如果你改变s1或s2它将不会打印任何东西。

答案 2 :(得分:-2)

public class Hello{

  boolean val = false;
  String str = "";

  public Hello(String a, String b){
   if(a == "hello" && b == "world"){
     this.val = true;
     this.str = "hello to you too";
   }
 }
 public static void main(String args[]){
   String a = "hello";
   String b = "world";
   Hello hello = new Hello(a,b);
   if(hello.val == true)
      System.out.println(hello.str);
 }
}