Weitere ähnliche Inhalte
Mehr von Yasuharu Hayami (11)
Groovyクイズ(計算編)
- 2. ! 速水 康晴(はやみ やすはる)
! 新潟県新潟市在住
! ウイングアーク1st株式会社 新潟オフィス
◦ プログラマ:Java/Flex/ActionScript
! JGGUGサポート・スタッフ
! E-mail:toby55kij@gmail.com
! Twitter:toby55kij
2014/9/27 2
- 4. ! Groovyで2 / 3を計算すると?
◦ def x1 = 2 / 3;println x1
1. 0
2. 0.6666666666666666
3. 0.6666666667
2014/9/27
4
- 5. ! Groovyで2 / 3を計算すると?
◦ def x1 = 2 / 3;println x1
1. 0
2. 0.6666666666666666
3. 0.6666666667
⇒正解は3.
整数同士の割り算では、結果はBigDecimal
2(int) / 3(int) = 0.6666666667(BigDecimal)
2014/9/27
5
- 6. ! Groovyで2 / 3を計算すると?
◦ def x1 = 2 / 3;println x1
1. 0 (Javaで2/3を計算)
2. 0.6666666666666666 (2 / 3dを計算)
3. 0.6666666667
⇒正解は3.
整数同士の割り算では、結果はBigDecimal
2(int) / 3(int) = 0.6666666667(BigDecimal)
2014/9/27
6
- 7. ! Groovyで(1f * 2.0) / 3.0を計算すると?
◦ def x2 = (1f * 2.0) / 3.0;println x2
1. 0
2. 0.6666666666666666
3. 0.6666666667
2014/9/27
7
- 8. ! Groovyで(1f * 2.0) / 3.0を計算すると?
◦ def x2 = (1f * 2.0) / 3.0;println x2
1. 0
2. 0.6666666666666666
3. 0.6666666667
⇒正解は2.
掛け算ではどちらかがdoubleかfloatなら、結果はdouble
1f(float) * 2.0(BigDecimal) = 2.0(double)
割り算ではどちらかがdoubleかfloatなら、結果はdouble
2.0d(double) / 3.0(BigDecimal) =
0.6666666666666666(double)
2014/9/27
8