- - PR -
voidについて悩んでます
1
投稿者 | 投稿内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-05-04 01:56
kenです。
初めて投稿します。宜しくお願いいたします。 プログラミングの勉強(Java)を始めて半年ほどですが、 voidについて悩んでいます。 参考書等で調べてみると、 "voidは戻り値を持たないメソッドに指定する" というようなことが書いてあります。 "戻り値をもつ" "戻り値を持たない" この違いが、よく分かりません。 ご説明いただけませんでしょうか? お願いします。 | ||||||||||||||||
|
投稿日時: 2005-05-04 02:48
戻り値を持つメソッド
戻り値を持たないメソッド
このような違いです。 戻り値とはメソッドの実行結果と思ってもらって結構です。 わかりやすく例えると、 ・メール 送信をしたら終了(戻りはなし)
・ブラウザ URLを送信したら、HTMLが戻る
こんな感じです。 | ||||||||||||||||
|
投稿日時: 2005-05-04 03:27
例えば、
System.out.println("Hello"); は、「画面に"Hello"と出力してください」という意味なので、結果は特に必要ありません。 でも、 String key = "abc"; String ABC = key.toUpperCase(); は「文字列"abc"を大文字にして、その結果をください」という意味なので結果が必要です。 戻り値のあるメソッドは、その戻り値の型を最初に書きますが、 int foo(...) { ... } 戻り値のない場合、何もなしに書くのは、文法上マズイので、 foo(...) { ... } // 他のメソッドと書き方が異なってしまう じゃあ、「戻り値なし」と書けばいいじゃん、 戻り値なし foo(...) { ... } というのを英語に直して、 void foo(...) { ... } と書きます。 | ||||||||||||||||
|
投稿日時: 2005-05-04 11:29
かつのり様 a-san様
ご回答いただきまして、ありがとうございます。 "戻り値とは、メソッドの実行結果" だということが理解できました。 また、voidを指定すると、 "メソッドの処理は終了" だということも理解できました。 悩みが晴れました。 またよろしくお願いします。 |
1