40

どうすればキャストできLongますBigDecimalか?

4

6 に答える 6

61

新しいを作成する必要がありますBigDecimal

BigDecimal d = new BigDecimal(long);
于 2009-05-28T15:51:21.397 に答える
23

完全を期すために、以下を使用できます。

// valueOf will return cached instances for values zero through to ten
BigDecimal d = BigDecimal.valueOf(yourLong);

0〜10はjava 6の実装時点であり、以前のJDKについては不明です。

于 2009-05-28T16:07:06.170 に答える
17

BigDecimal d = new BigDecimal(long);は使用しないでください。!!

longのBigDecimalでの実装は正確ではありません。金融アプリケーションの場合、これは非常に重要です。

ただし、String引数の実装の方が優れています。したがって、次のようなものを使用します。

new BigDecimal(yourLong.toString());

これについてhttp://www.parleys.com/で話がありました。

于 2011-08-16T09:02:20.207 に答える
4

キャストできません。ただし、新しいBigDecimalものを作成することはできます。あなたが非原始的なロングを持っているならば、あなたは使用longから得ることができます。LongLong.getLongValue()

BigDecimal bigD = new BigDecimal(longVal);
于 2009-05-28T15:50:44.910 に答える
2

新しいBigDecimalオブジェクトを作成する必要があります

  Long test = new Long (10);
  BigDecimal bigD = new BigDecimal(test.longValue());
于 2009-05-28T15:52:43.140 に答える
0

新しいbigDecimalを作成する必要があります

どうやってするの

于 2009-05-28T15:52:01.457 に答える