2020/05/07 公開
・メソッド
メソッドとは、ある処理を1つにまとめもので、処理に必要な引数(変数/配列/クラス)を渡すと結果を返します。
メソッドを使うことで、同じ処理のコードを記述することなく、呼び出すだけで結果を得ることができます。結果として、コードが見やすくなり、変更も容易になります。
はじめに、メソッドの定義方法を説明していきます。
修飾子 戻り値のデータ型 メソッド名( 引数1, 引数2, … ) { // 実行する処理を記述 return 戻り値; }
メソッドは、引数を渡して戻り値を得たり、処理を行うためのもので上記のように記述します。メソッド名を決めて、処理のために必要な引数と、戻り値(結果)のデータ型と、{と}で囲まれた範囲に処理内容を記述します。
以下は、具体例です。
①メソッド名はaddで、引数はint型のaとbです。処理内容は、aとbを足した結果を戻すものです。戻す値は、returnの右側の値( a + b )です。
public static int add( int a, int b ) { return a + b; }
②メソッド名はmaxで、引数はint型のaとbです。処理内容は、aとbを比較して大きいほうを戻すものです。if文を使って2つの値を比較して大きいほうを戻しています。
public static int max( int a, int b ) { if ( a > b ) return a; return b; }
③メソッド名はwaitで、引数はint型のsecです。処理内容は、secで渡された秒数だけ何もしないで一時停止するものです。Thread.sleepメソッドの引数は1/1000秒単位(ミリ秒)なので渡された変数secを1000倍しています。戻す値は無いのでデータ型をvoidにしています。
Thread.sleepはtryとchatchを使わないとコンパイルでエラーになるので以下のように記述しています。
public static void wait( int sec ) { try { Thread.sleep( sec * 1000 ); } catch (InterruptedException e ) { } }
④メソッド名はgetPIで、引数はなしです。処理内容は、πの値を計算しdouble型で戻します。コサインの値が-1になるときの角度(ラジアン)がπになることを利用して計算しています。
public static double getPI() { return Math.acos( -1.0 ); }
ここでのメソッドの例では、修飾子をpublic staticにしています。publicはクラスの外からでも呼び出せるメソッドを表しています。staticは静的メソッドを表しており、クラスをnewしなくても呼び出せるメソッドです。詳細はここでは説明しません。
以下は、上記の①~④を実際に呼び出すJavaのソースコードです。
Method1.java ← クリックしてダウンロードページに移動
001: public class Method1 { 002: // ①aとbを足した値を戻す 003: public static int add( int a, int b ) 004: { 005: return a + b; 006: } 007: 008: 009: // ②aとbを比較して大きい値を戻す 010: public static int max( int a, int b ) 011: { 012: if ( a > b ) return a; 013: return b; 014: } 015: 016: 017: // ③sec秒停止する 018: public static void wait( int sec ) 019: { 020: try { 021: Thread.sleep( sec * 1000 ); 022: } catch (InterruptedException e ) { 023: } 024: } 025: 026: 027: // ④πを戻す 028: public static double getPI() 029: { 030: return Math.acos( -1.0 ); 031: } 032: 033: // メイン 034: public static void main(String[] args) { 035: // 10と6を足した値を戻す 036: System.out.println( add( 10, 6 ) ); 037: 038: // 3秒間停止 039: wait( 3 ); 040: 041: // 7と13を比較し、大きいほうを戻す 042: System.out.println( max( 7, 13 ) ); 043: 044: // 2秒間停止 045: wait( 2 ); 046: 047: // 計算したπを戻す 048: System.out.println( getPI() ); 049: } 050: }
Method1.javaの出力結果
16 13 3.141592653589793
メソッドに引数をいろいろ変えて試してください。
以上です。
■メソッド関連コンテンツ
return文 | メソッドの戻り値 |
■関連コンテンツ
逆三角関数 acos | acosの意味と、Math.acosの使い方について解説 |
時間の単位変換 | 1日、1時間は何ミリ秒? |
![]() |
Javaの変数変数は、プログラムの中で値を入れておく入れ物のようなものです。 |
■新着情報
2021.12.21 | 現在の日時を取得 | いまの年月日、時分秒? |
■広告
