Area
の値をコンソールに出力した後で使用しない場合は下の方法で問題ありません。
しかし、プログラムでは処理した結果を更に別の処理に用いることがよくあります。
returnを用いて値を返さないと処理を全てひとまとめに書かなければなりません。
値を返して、メソッドを小さくまとめていくことで再利用しやすいコードが書きやすくなります。
体積を求める処理と処理対象が増えたとしましょう。
lang
1package Samplejava;
2
3public class sample {
4
5 public static void main(String[] args) {
6 double AreaA=cm(3.5,3.5);
7 System.out.println("Aの面積は"+AreaA+"です");
8
9 double VolumeA=volume(AreaA,10);
10 System.out.println("Aの体積は"+VolumeA+"です");
11
12 double AreaB=cm(3.5,3.5);
13 System.out.println("Bの面積は"+AreaB+"です");
14
15 double VolumeB=volume(AreaB,10);
16 System.out.println("Bの体積は"+VolumeB+"です");
17 }
18
19 public static double cm(double bottom,double height){
20 return bottom*height/2;
21 }
22
23 public static double volume(double area,double thickness){
24 return area*thickness;
25 }
26}
lang
1
2package Samplejava;
3
4public class sample {
5
6 public static void main(String[] args) {
7 cm(3.5,3.5,10,4,4,9);
8
9 }
10
11 public static void cm(double bottomA,double heightA,double thicknessA,
12 double bottomB,double heightB,double thicknessB){
13 double AreaA=bottomA*heightA/2;
14 System.out.println("Aの面積は"+AreaA+"です");
15
16 double VolumeA= AreaA*thicknessA;
17 System.out.println("Aの体積は"+VolumeA+"です");
18
19 double AreaB=bottomB*heightB/2;
20 System.out.println("Bの面積は"+AreaB+"です");
21
22 double VolumeB= AreaB*thicknessB;
23 System.out.println("Bの体積は"+VolumeB+"です");
24 }
25
26}
下の場合、cm
が元々の面積を求めるという役割が変わってしまいます。
更にこの後、求める面積と体積の計算方法が変わり、それぞれ5行のコードを書かなければいけなくなったとします。
上の場合、面積の計算はcm
に一箇所なので+5行、体積の計算はvolume
に一箇所なので+5行で済みます。
下の場合、面積の計算は二箇所なので+10行、体積の計算は二箇所なので+10行書かなければなりません
更に処理が複雑化していけばよりコードの量や品質に差が現れてきます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/07/05 03:07