質問するログイン新規登録

回答編集履歴

2

余計な記載部分を取り消し

2021/07/08 00:08

投稿

dodox86
dodox86

スコア9427

answer CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  `java.lang`の中に`Integer(s)`と複数形になった`getIntegers`メソッドはありません。あるのは[getInteger](https://docs.oracle.com/javase/jp/8/docs/api/java/lang/Integer.html#getInteger-java.lang.String-)です。
6
6
 
7
- ご覧になっているUdemyの教材の内容は質問者さん以外の第三者には分かりません。teratailでJavaに関して質問、回答している者が全て同じコースを体験している訳でもありません。ですので具体的なコードの位置を示しても分からないことがほとんどです。ですので想像ですが、`int`の要素をその配列として複数返す為`getIntegers`」と言う独自メソッドを定義して説明しているのだと思います。例えば`Hoge`と言う何らかのオブジェクトを返す(呼び出し側にとっては"取得"する)メソッドの名前として`getHoge`、配列やリストで複数返すようなものでは`getHoges`のように名付けて定義するのはよくあることです。
7
+ ご覧になっているUdemyの教材の内容は質問者さん以外の第三者には分かりません。teratailでJavaに関して質問、回答している者が全て同じコースを体験している訳でもありません。[質問文中に画像付き提示済みであり、余計であったので取り消し]~~ですので具体的なコードの位置を示しても分からないことがほとんどです。~~ですので想像ですが、`int`の要素をその配列として複数返す為`getIntegers`」と言う独自メソッドを定義して説明しているのだと思います。例えば`Hoge`と言う何らかのオブジェクトを返す(呼び出し側にとっては"取得"する)メソッドの名前として`getHoge`、配列やリストで複数返すようなものでは`getHoges`のように名付けて定義するのはよくあることです。
8
8
 
9
9
  恐らくですが、ご覧になっている教材では「`int`型の要素を複数取得するという目的のメソッドを`getIntegers`と名付け、コードを読み易くするようコード自体を抽象化、文として具体的なメソッドに仕立て上げようとしているのだと思います。それを実際に「読み易い、理解し易い」と感じるかどうかはコードの設計と文脈、前後関係、読んだ当事者の学習状況を含む慣れによります。
10
10
 

1

質問文の画像の見落としがあったので追記

2021/07/08 00:08

投稿

dodox86
dodox86

スコア9427

answer CHANGED
@@ -15,4 +15,9 @@
15
15
  return array;
16
16
  }
17
17
  ```
18
- それこそ一見、「なんでわざわざ面倒なコードにするの?」と思いがちですが、「`num`で表される指定の数の`int`型要素を配列で返す」と言うことを`int[] getIntegers(int num);`のメソッド仕様(設計)で一挙に示すことができます。また、必要に応じて引数の`num`を利用し、より複雑な処理をした後、結果を返すこともできるようになります。
18
+ それこそ一見、「なんでわざわざ面倒なコードにするの?」と思いがちですが、「`num`で表される指定の数の`int`型要素を配列で返す」と言うことを`int[] getIntegers(int num);`のメソッド仕様(設計)で一挙に示すことができます。また、必要に応じて引数の`num`を利用し、より複雑な処理をした後、結果を返すこともできるようになります。
19
+
20
+ ---
21
+ **貼られた画像を見落としていたので追記しました:**
22
+
23
+ `getIntegers`メソッドはその`Main`クラス内において`int`の複数の値を`java.util.Scanner`で取り込む仕様ですね。まさに「複数のint値を取得する」という機能を表したメソッド名です。このように他のクラスでの名前とかぶることは良くあって、反対に言うとそれでも適切に名前付けができるようにパッケージやクラスと言うものがあります。で、同じ名前でも向かう対象、オブジェクトが違えば施す処理が違うかもしれない、オブジェクト指向、と繋がります。