私はJavaが初めてで、現在値渡しの仕組みを学ぼうとしています。Test というメイン クラスと、TestMax という 2 番目のクラスがあります。以下のコードで達成しようとしているのは、クラス TestMax の 2 つのパラメーター i と j の値をメイン クラスに設定し、max()
先ほど渡したばかりのパラメーターの値を渡してメソッドを呼び出すことです。
コンソールへの出力は次のようになります。
The maximum between 2 and 10 is 10.
メソッドに値を渡す方法に問題があることはわかっていますが(int res = max(i,j)
、最後の2時間かけて、これが機能しない理由を理解しましたが、それを理解できません。
package testproject;
public class Test {
/** Main method */
public static void main(String[] args) {
TestMax pass = new TestMax();
pass.setI(2);
pass.setJ(10);
int res = max(i,j);
System.out.println("The maximum between " + pass.getI() +
" and " + pass.getJ() + " is " + res);
}
}
2 番目のクラスの TestMax:
package testproject;
public class TestMax {
int i ;
int j ;
public static int max(int num1, int num2) {
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
//Getters & Setters
public void setJ(int j) {
this.j = j;
}
public int getJ() {
return j;
}
public void setI(int i) {
this.i = i;
}
public int getI() {
return i;
}