2016-07-29 25 views
-1

Main.java別のクラスから値を取得し

public static void main(String[] args) { 
    String username =""; 
    String password = ""; 
    Class_b b = new Class_b(); 
    b.login("username","password"); 
} 

Class_b.java

public String login(String user, String pass) { 
     String username = "admin"; 
     String password = "password"; 
     return username+" "+password; 
} 

私はClass_bからusernamepassword値を取得し、文字列変数にそれを保存したいusernamepassword Main.javaにあります。

+0

あなたは明らかにユーザー名とパスワードをメインからのログイン機能に渡していますが、なぜメインに戻す必要がありますか?ありがとう。 – redunderthebed

答えて

2

カスタムJava型、またはStringだけの配列を返すことができます。

Class_b.java

public String[] login(String user, String pass) { 
     String username = "admin"; 
     String password = "password"; 
     return new String[] { username, password }; 
} 

ような何か、あなたがString(S)への渡している理由もはっきりしていない

public static void main(String[] args) { 
    String username =""; 
    String password = ""; 
    Class_b b = new Class_b(); 
    String[] arr = b.login(username,password); 
    if (arr.length > 1) { 
     username = arr[0]; 
     password = arr[1]; 
    } 
    System.out.println("username=" + username + ", password=" + password); 
} 

のように、あなたはそれを呼び出すかもしれませんあなたの方法では、それらを無視して新しい値を返します。

+0

それは私の多くを助ける –

1

ステップ1:クラスClass_bを作成します。

public class Class_b { 

private String username; 

private String password; 

public Class_b() { 
    this.username = "admin"; 
    this.password = "password"; 
} 

/** 
* @return the username 
*/ 
public String getUsername() { 
    return username; 
} 

/** 
* @param username 
*   the username to set 
*/ 
public void setUsername(String username) { 
    this.username = username; 
} 

/** 
* @return the password 
*/ 
public String getPassword() { 
    return password; 
} 

/** 
* @param password 
*   the password to set 
*/ 
public void setPassword(String password) { 
    this.password = password; 
} 

}

ステップ2:Main.java

public static void main(String[] args) { 
    Class_b class_b = new Class_b(); 
    username = class_b.getUsername(); 
    password = class_b.getUsername(); 
} 

に感謝を。

+0

良いアイデアゲッターとセッターを使用する。 getterとsetterが何をするのかを理解するのに役立ちます –

2

spilled()メソッドを使用することができます。

String temp = b.login("username","password"); 
String login[] = temp.split("\\s+"); 
/*spilts username & password separated by space*/ 
System.out.print(login[0]); //prints username 
System.out.println(login[1]); //prints password 
関連する問題