Java女子部勉強会「数値型おさらい&金勘定ことはじめ」で喋りました

Java女子部は女性のJava開発者のコミュニティです。僕には部員の資格がないのですが、6月11日(木)の勉強会「数値型おさらい&金勘定ことはじめ」に講師として参加しました。

講義資料は次のものです。春のJJUG CCCで発表したものに、割り算についての記述を追補しました。

次のような質疑応答がありました。

Q. JDBCSQL Server上の数値を出し入れした時に、データの破損が起きたことがある。ナンデ?
(1) SQL Server側の列がFLOAT型で定義されていたのかも。この場合、BigDecimal←→FLOATの変換は正確に行えない。あるいは、 (2) NUMERIC/DECIMALで定義されていたとしたら、桁数・スケールのいずれかが合っていなかったのかも。
Q. 0.0001を精度3で丸め(round)たとき、なぜ元の値のままになるのか?
0.0001は(スケールされない整数値=1, スケール=4)の値で、精度=整数値の桁数は1。精度が指定した3以下なので、丸めは発生しない。

和気あいあいとして、気張っていないので、良い所でした。

以上、Java女子部もくもく会よりレポートいたします。