Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![Akkaが1.0になった。JavaとScalaにアクターモデルをもたらす](https://cdn-ak-scissors.b.st-hatena.com/image/square/1dea079f3c8eee49f636638a061b722d42b294d5/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s1_20240521072209%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
前書き Scalaという言語をご存知ですか? Javaと同じくコンパイルされるとclassファイルになり、実行時はJVM上で動作する、オブジェクト指向+関数型のプログラミング言語です。 Scalaを開発したのはJavaのgenericsの設計を手がけたり、javacの開発をしていた経歴も持つMartin Odersky氏。 Scalaは後発の言語ということもあって、Javaを書いている時に感じる冗長さに対する様々な解が用意されています。 本記事では、ScalaとJavaのコードを比較しながら、JavaユーザがScalaに移った際に得られるメリットを提示していきます。 尚、序盤のサンプルコードはJavaユーザに伝わりやすいように、returnを明記したり、メソッドは必ず{ }で囲むなど、極力Javaっぽい記述をしています。 だいたいJavaと同じような書き方ができます ScalaはJavaの
追加情報です。 Q「grep で検索して Double.parseDouble を使っていなければOK?」 Noです。 直接呼んでいなくても、間接的に呼んでいる場合があります。 その場合も同様の現象が起きます。 コアのAPIでも、Double.parseDouble()を呼んでいるものがあります。 以下は内部で呼んでいるメソッド、クラス、パッケージです(JDK1.6)。 java.math.BigDecimal.doubleValue() java.math.BigInteger.doubleValue() java.text.DigitList.getDouble() java.util.Scanner java.util.prefs.AbstractPreferences java.util.prefs.Preferences xalan xerces xpathさらにそれを呼んでいる
実際のソースを見て、解析してみました。 // 問題のコード Double.parseDouble("2.2250738585072012e-308"); これが問題のコードですが、Double.parseDouble()の中身は以下のようになっています。 import sun.misc.FloatingDecimal; public final class Double extends Number implements Comparable<Double> { ... public static double parseDouble(String s) throws NumberFormatException { return FloatingDecimal.readJavaFormatString(s).doubleValue(); } ... } 実際にはsun.misc.Float
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く