私はこれが以前に尋ねられましたが、私が理解できない方法ではないことを知っています。Java渡し変数toStringハッシュを避ける
Soが
私はクラスにいくつかの変数をとり、それらを何かと比較し、より高いものを返す必要があります。長期的には、私は稼動している合計と比較する必要がありますが、私の問題では、この問題はかなり根本的だと思います。私はメインクラスに変数BACKを渡す方法を理解していません。
import java.io.*;
public class testing123 {
public static void main(String[] args) {
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader reader = new BufferedReader(input);
Integer a;
Integer b;
Integer numbersCombined;
try {
System.out.println("Please enter a number");
a = Integer.parseInt(reader.readLine());
System.out.println("Please enter a number");
b = Integer.parseInt(reader.readLine());
numbersCombined = (a + b);
testClass Check = new testClass();
System.out.println("Your numbers combined is " +numbersCombined);
System.out.println(Check);
} catch (IOException e){
System.out.println("Error reading from user");
}
}
}
class testClass {
public static Integer testClass (Integer numbersCombined) {
if (numbersCombined > 100) {
numbersCombined = numbersCombined;
}
else {
numbersCombined = 100;
}
System.out.println(numbersCombined);
return numbersCombined;
}
}
私がリターンを取り除くと、numbersCombinedが表示されますが、それだけです。戻り値のある場所では、戻り値の上にある印刷行は実行されず、元のnumbersCombinedが印刷されます(100未満であるため、例えば10と20を使用してはいけません)。 testClass @ 76046e53ではなく、実際の値です。私はそれを上書きする方法があることを知っているが、私が見つけた答えは私のために働かない。
は、私が遭遇しています基本的な問題ですが、リストされているオーバーライドは本当に私のために働いていない、と私は文字列ではなく、とにかく整数たいです。
最後に、私が実際にやっていることは、ユーザーから一連の4つの数字を受け取り、この関数を使ってこの数値のシリーズが以前の最大値よりも高いかどうかを比較し、それはユーザーが4つの数字のシリーズを入力し、最後に最大値を印刷するまで、ループを使って前進する新しい最大値です。
これは、すべての機能がなくても、すべてインラインで簡単に書き込むことができました。しかし、関数に比較を送信すると、私はそれを返す方法を理解していない、と私は一日中コンセプトを理解しようと過ごしました。一日中。だから、私はそれが愚かな答えになることを知っている間、私は愚かですが、私は(申し訳ありませんが、一種の守りのような)試していないためではありません。
基本的には、クラスに2つの変数(この例だけがあります)を送信し、それらを比較し、1つを変更してメインクラスに戻したいと思います。この例では、変数を1つ送信し、比較し、送信するだけです。
あなたはtestClass' 'であなたのメソッドを呼び出してみましたか?それはあなたが望むように見える整数を返します。 –