先輩に「メソッドを実行して結果を変数に突っ込め」と言われたら
javaのコーディング中にこんな風に言われた時に、どんなことを考えているのかを整理しておきます
調査
まず対象となるメソッドが何なのかを調査します
- メソッドはインスタンスメソッドかクラスメソッドか
- 引数の型は何か
- 戻り値の型は何か
たとえば
class StringUtil { int getLength(String text) { /* 実装省略 */ } }
ならこう
- インスタンスメソッド
- 引数の型はString
- 戻り値の型はint
実装
調査が終わったら次は実装です
最初に書くのは戻り値の型です
int
個人的にはここが最もハードルが高いように感じます
どうしてもメソッドの実行を最初に書きたくなるみたい
ただ文法上、変数宣言が先なのでしょうがない
次に書くのはメソッドの結果を入れる変数名
int length
クーーーッ!
まだメソッド実行させてくれないのかー!
て感じですが変数名を決める必要があります
ここで変数名を迂闊にhoge
とかにすると叱られます
適切な名前をつけましょう
次にようやくメソッドの実行です
メソッドがインスタンスメソッドなら変数名.メソッド名()
クラスメソッドならクラス名.メソッド名()
の形式で書きます
今回はインスタンスメソッドなので前者の形式ですが、インスタンスが入ってる変数がないのでそれを先に書きます
StringUtil util = new StringUtil(); int length
次にメソッドを書きます
とりあえず引数は空で良い
StringUtil util = new StringUtil(); int length = util.getLength();
最後に引数を書きます
引数の型を意識して書きます
StringUtil util = new StringUtil(); int length = util.getLength("あいうえお");
以上
まとめ
コーディング中に「メソッドを実行して結果を変数に突っ込め」と言われたときの思考を整理しました
普段は体が勝手に反応するレベルでコーディングしてますが、整理してみるといろいろ考えてるものだな
とりあえず調査してから実装することが重要だと思います