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という名前で使います。
!ここが大事です。
int型を引数に使ってくれたらaという名前で使う。
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関数ですらなくなったりしましたが、よんでくださりありがとうございました。
書いていて思いました。動画って伝えやすいんだな。