質問編集履歴

1

作成途中のソースを、いただいた解答をもとに編集しました。また、問題文を簡略化しました。

2020/07/20 14:09

投稿

icecleam
icecleam

スコア46

test CHANGED
@@ -1 +1 @@
1
- 関数型インターフェースについて
1
+ 関数型インターフェースと計算処理
test CHANGED
@@ -1,8 +1,8 @@
1
- 下記の問題いているのですが、関数型インターフェースの使い方がインターネット使って調べてもいまいち分からず、困っています。
1
+ 下記の問題答と簡単な解説お願ます。
2
2
 
3
- 一応、途中まで作成した2つソースも載せておきますので、お手数ですがご回答頂けると幸いです。。。
3
+ 一応、途中まで作成した2つソースも載せておきますので(参考になるのかは分かりませんが。。。)、お手数ですがご回答頂けると幸いです。
4
4
 
5
-
5
+ 関数型インターフェースを利用した計算の方法、[StandardWeight。java]内での処理方法などご教授ください。
6
6
 
7
7
  すみませんが、よろしくお願いします。
8
8
 
@@ -10,17 +10,15 @@
10
10
 
11
11
  【問題文】
12
12
 
13
- 身長から標準体重を求める関数「stdWeight」を関数型インターフェースを使って定義してくだい。ただし身長はcm単位のint値、体重はkg単位のdouble値で表すとします。標準体重は以下の式でBMIが22となるときの値とします。
13
+ 身長から標準体重を求める関数「stdWeight」を関数型インターフェースを使って定義してくだい。ただし身長はcm単位のint値、体重はkg単位のdouble値で表すとします。標準体重は以下の式でBMIが22となるときの値とします。
14
14
 
15
15
 
16
16
 
17
- BMI = 体重 ÷(身長 × 身長) ※この式では体重は単位、身長m単位
17
+ 体重 = 22 * (身長 × 身長) (体重:kg、身長m)
18
18
 
19
19
 
20
20
 
21
- この関数を使ってコマンドラインから身長をcm単位で入力すると、標準体重を kg 単位で出力するメインプログラムを作ってください。ただし入力に関するエラー処理は不要です。 不適切な入力があった場合は例外を発生させてかまいません。複数の引数が入力されても1つ目の値を処理してください。
21
+ この関数を使ってコマンドラインから身長をcm単位で入力すると、標準体重を kg 単位で出力するメインプログラムを作ってください。
22
-
23
-
24
22
 
25
23
 
26
24
 
@@ -28,27 +26,15 @@
28
26
 
29
27
  public class StandardWeight {
30
28
 
31
- public static void main(String[] args) {
29
+ public static void main(String[] args) {
32
30
 
33
- double weight = 0;
31
+ double weight = 0;
34
-
35
- CalcStandardWeight weight new CalcStandardWeight(){
36
32
 
37
33
 
38
34
 
39
- //Override
35
+ System.out.println();
40
36
 
41
- public Double stdWeight(double bmi){
42
-
43
- return weight;
44
-
45
- }
37
+ }
46
-
47
- };
48
-
49
- System.out.println(weight.stdWeight());
50
-
51
- }
52
38
 
53
39
  }
54
40
 
@@ -56,10 +42,10 @@
56
42
 
57
43
 
58
44
 
59
- [CalcStandardWeight。java]
45
+ [FunctionalInterface。java]
60
46
 
61
- public interface CalcStandardWeight {
47
+ public interface FunctionalInterface {
62
48
 
63
- public double stdWeight(int height);
49
+ public abstract void doSomething(String text);
64
50
 
65
51
  }