私は "getValue"を "setValue"する方法を知っていますが、この場合は "getValue"をどのようにしますか?Stringとintを同時に使用してセッターとゲッターを実装する方法は?
public void setInfo(String name, int age) {
setName(name);
setAge(age);
}
getInfoとstringとintを同時に使用する方法はありますか?
私は "getValue"を "setValue"する方法を知っていますが、この場合は "getValue"をどのようにしますか?Stringとintを同時に使用してセッターとゲッターを実装する方法は?
public void setInfo(String name, int age) {
setName(name);
setAge(age);
}
getInfoとstringとintを同時に使用する方法はありますか?
は、複数の方法があり、1は以下のとおりである:コードを1として
public Object[] getInfo() {
Object[] info = new Object[2];
info[0] = getName();
info[1] = getAge();
return info;
}
、名前と年齢の両方がインフォオブジェクトの一部であることを、私は、あなたが(GETINFOで全体のオブジェクトを返すことができるように)を想定するものあなたは、同じ機能の2つの値を返すことはできませんので、 EX-
public InfoObject getInfo() {
return infoObject();
}
を呼び出します。この方法を使用したくない場合は、名前と年齢の2つの別々のメソッドをそれぞれ記述する必要があります。以下のような:
public String getName() {
return this.name;
}
と
public int getAge() {
return this.age;
}
この方法は、あなたはあなたのコードがきれいで分かりやすくすることができます。あなたはsetName(String name)
とsetAge(int age)
を持っているとして、あなたはすでにgetName()
とgetAge()
のようなメソッドを持って、
public Object[] getValue(){
return new Object[]{getName(), getAge()};
}
希望:
は、次の方法を試してください。私はそれを行う必要があるとき
コンパイラの型チェックが失われます。 – Andreas
こんにちは@ClaudioLopezコンパイル時の型チェックが必要ですか?必要な場合は、 'name'と' age'を含むラッパーオブジェクトを探してください。 –
こんにちは@Andreasは受け入れられた答えを見てください。 –
私は通常、java.util.Mapを使用して、例えば:などSWIFTなど、いくつかのプログラミング言語で
private Map<String, Object> getInfo() {
Map<String, Object> result;
result.put("name", name);
result.put("age", age);
return result;
}
https://docs.oracle.com/javase/7/docs/api/java/util/Collections.html
コンパイラの型チェックが失われます。 – Andreas
、「タプル」があると返すことができます同時に2つの値。
しかしJavaの世界であなたが公式「タプル」はありませんが、あなたは似たような行うことができます:あなたのケースで
public class Pair<F, S> {
public F first;
public S second;
}
を:
Pair<String, Integer> mValue;
public void setInfo(String name, int age) {
mValue = new Pair<String, Integer>(name, age);
}
public Pair<String, Integer> getInfo() {
return mValue;
}
ブレークアップセッターを二つの部分に、 1つは「名前」、もう1つは「年齢」です。 –
セッターとゲッターは、個々のメンバーのためのものです – Ramanlfc
'return_type getName(){}'と 'return_type getAge(){}'。 'Ojbect o'、' o.getName(); 'と' o.getAge(); ' –