4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Java]引数とかパラメータとか

Last updated at Posted at 2018-09-01

https://qiita.com/hp_kj/items/789a7fb7e922745f8bd9#comment-f22f811bbe75340a3f1b
コメント欄にてご指摘いただいたので、仮引数、実引数に関して調べてみました。ありがとうございました!

引数なんて初歩で習ったし。余裕、、とか思ってました。
例えば、

public static void main(String[]args){
  int x = 10;
  int y = 20;
  System.out.println(add(x,y));
}

public static int add(int x,int y){
   return x + y;
}

上記だと自分は理解でできたんです。
add関数に
xの10
yの20が入るんだと。
結果、30が出力されるのだと。

けど、こうなると分からなくなっていました。

public static void main(String[]args){
  int x = 10;
  int y = 20;
  System.out.println(add(x,y));
}

public static int add(int a,int b){
   return a + b;
}

いやいやaとbじゃないよ、add関数に入れたいのはxとyだと。

なので関数をudemyで勉強しました。

結果は、関数の引数はただの入り口である。
というのが結論でした。

例を書きます。

public static void main(String[]args){
  int x = 10;
  int y = 20;
  System.out.println(add(x,y));
}

public static int add(int a,int b){
   return a + b;
}

まずこのコードです。分解します。
した半分です。

int add(int a,int b){
   return a + b;
}

自分の文章力がなさ過ぎます。更に分解します。

int add(int a){
   return a;
}

これで考えます。

このadd関数はint型を引数に使ってくれたらaという名前で使います。
!ここが大事です。

:o: int型を引数に使ってくれたらaという名前で使う。

:x: aという名前のint型のみを引数に使う。

add関数の中ではaという名前で使います。
という意味のint aなんです。
なのでたとえば、

public static void main(String[]args){
  int x = 10;
  int cccc = 20;
  System.out.println(add(x,cccc));
}

public static int add(int aaaaaaa,int bbbbbbb){
   return aaaaaaa + bbbbbbb;
}

これでもいいんです。
main関数では、add(x,cccc)となっていますが、
int型を引数に使ってくれたらaaaaaaaという名前で使う。

なので、xだろうが、yだろうが,ccccだろうが、int型を使ってくれさえすれば返してくれるんです。

途中からadd関数ですらなくなったりしましたが、よんでくださりありがとうございました。
書いていて思いました。動画って伝えやすいんだな。

4
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?