2013-12-12 10 views
5

これは抜粋である:1e9dによる除算は何を意味しますか?

String myTime = someTime/1e9d + ","; 

someTimeSystem.nanoTime()を用いて導出されます。 1e9dここで何をしますか?

+4

10^9をダブル(一種の冗長)とします。 – Zong

+1

ナノ秒ですので、1秒に1 000 000 000 nsがあります。平時の秒で時間を表示したい場合は、10e9で除算する必要があります。 – Fabinout

+0

1e9dは科学的表記 – Tyler

答えて

4

1e9は10^9
2d 2例えば

doubleとしての手段

  • SYSOUT 1e9 => 1.0E9
  • SYSOUT 10e9 => 1.0E10
+0

同じ行に1.0e-3をどのように表現しますか? '1e-3d'?それは私に何の誤りも与えません。 – user1071840

+0

@ user1071840または単に「1e-3」 – GGrec

+0

すばやくありがとう。 – user1071840

1

接尾辞dは二重数を表します。数値が浮動小数点数として扱われなかった場合、除算は整数除算とみなされ、整数(たとえば3/2 = 1)を返します。

1e9は単純に10^9です。変換はナノ秒から秒までのようです。

--EDIT--

インゴは正しく10E9がすでに(詳細はthis part of the specを参照)、二重にするJavaによって評価されていることを指摘しています。したがって、この場合は 'd'は必要ありません。

+0

おそらく、 '10e9'という表記法は、少なくともJavaではdouble型であることを証明するのに十分であると付け加えるべきです。したがって、 'd'接尾辞はここでは本当に余分です。 – Ingo

関連する問題