草庐IT

double-elimination

全部标签

double 的 Java ArrayList

有没有办法定义ArrayList与double类型?我都试过了ArrayListlist=newArrayList(1.38,2.56,4.3);和ArrayListlist=newArrayList(1.38,2.56,4.3);第一段代码表明构造函数ArrayList(double,double,double)未定义,第二个代码显示double之后需要维度. 最佳答案 试试这个:Listlist=Arrays.asList(1.38,2.56,4.3);返回一个固定大小列表。如果您需要一个可扩展列表,将此结果传递给ArrayLi

java - Gson 强制使用 int 而不是 double

你好我可以配置gson他使用int而不是doublegot数据如:{fn:chat,data:{roomId:1,text:"Somebrabble"}}我有一个PacketClass将其反序列化为:publicclassDataPacket{privateStringfn;privateObjectp;//willbeaStringMap}并像这样解码:DataPacketpkg=gson.fromJson(message,DataPacket.class);为了更好的类型处理,我得到了DataPacket.p字段的数据pojo,例如:publicclassChatPacket{pu

java - 输出打印预初始化的 Java double 与 inline 的区别

在将构建从Java1.6升级到1.7时,我们的单元测试开始失败,因为这两个版本处理double打印尾随零的方式不同。这可以用这个例子重现:doublepreInit=0.0010d;System.out.println("pre-init:"+preInit);System.out.println("inline:"+0.0010d);Java1.6将输出:pre-init:0.0010inline:0.0010Java1.7将输出:pre-init:0.001inline:0.0010我有两个问题:为什么内联连接的打印与具有预初始化值的相同连接不同?Java1.6和1.7之间的哪些变

java - Java 7 允许从 Number 转换为 double 吗? (自动装箱)

一位同事检查了这段代码:Numbern=...;doublenr=n==null?0.0:(double)n;然后另一位同事提示说这没有编译,这正是我所期望的。然而,事实证明我已经从SVN中提取了这段代码并且一切正常。我们都在eclipse中将Java版本设置为1.7,结果代码在eclipse4.4.2(Luna)下编译正常,但在4.2.2下编译失败。我通过将转换替换为n.doubleValue()解决了这个问题。现在真正的问题是:为什么这首先会被接受?它当然应该在转换为Double而不是double时起作用,但我认为直接从Number转换为double被禁止。那么,这是同时修复的ec

java - 重新审视 IEEE-754 double (64 位浮点)与长整型(64 位整数)

我正在重新审视一个问题(Howtotestifnumericconversionwillchangevalue?),据我所知,这个问题已经完全解决了。问题是检测特定数值何时会溢出JavaScript的IEEE-754数字类型。上一个问题使用的是C#,标记的答案非常有效。现在我正在做完全相同的任务,但这次是在Java中,但它不起作用。据我所知,Java使用IEEE-754作为其double数据类型。所以我应该能够来回转换它以迫使精度损失但它往返。对此感到困惑,我开始深入研究Java,现在我真的很困惑。在C#和Java中,long的最小值和最大值是相同的:longMIN_VALUE=-92

java - Java 中的 Polygon.Double 在哪里?

我又一次在做Java图形(Graphics2D),但我注意到没有Polygon.Double或Polygon.Float类,而有Rectangle2D.Float和Rectangle2D.Double类。有人知道这是为什么吗?我只需要使用double作为点绘制一个三角形。 最佳答案 您可以使用Path2D(或Path2D.Float或Path2D.Double)以获得相同的效果。 关于java-Java中的Polygon.Double在哪里?,我们在StackOverflow上找到一个类

java - 在 java 中将 double 分成两部分 "integer & fraction"的最佳方法是什么

我试过通过以下方法分离5.6(例如):privatestaticdouble[]method(doubled){intintegerPart=0;doublefractionPart=0.0;integerPart=(int)d;fractionPart=d-integerPart;returnnewdouble[]{integerPart,fractionPart};}但是我得到的是:[0]=5.0[1]=0.5999999999999996关于在不将数字转换为字符串的情况下执行此操作,您有什么建议吗? 最佳答案 使用BigDec

Java - Decimal Format.parse 以返回具有指定小数位数的 double 值

我希望能够将字符串转换为Double,给定格式字符串中的小数位数。所以“###,##0.000”应该给我Double到小数点后3位。编辑-为发生的事情添加了更多信息用户在UI中输入值-该值被输入到一个字符串中。规则是此值限制为小数点后3位。底层代码将值存储在数据库中,然后用于计算。因此,尾随小数位会导致计算结果略微超出预期。我有以下代码:try{//outputcurrentlocalewearerunningunder(thishappenstobe"nl_BE")System.out.println("CurrentLocaleis"+Locale.getDefault().toS

java - 将 8 个字节的小端二进制转换为 double float

我有一个逐字节读取的二进制文件。我遇到了一个8字节长的部分,其中包含一个doublefloat(小端)。我不知道如何读入它并通过掩蔽和/或转换正确计算它。(具体来说,文件类型是.LAS,但这无关紧要)。Java有什么技巧吗? 最佳答案 您可以使用ByteBuffer来自byte[]字节doubled=ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getDouble();从套接字ByteBufferbb=ByteBuffer.allocate(64*1024).order(

java - Java 中 double 的模数

在使用double时,您如何处理Java模数运算符的怪异行为?例如,您会期望3.9-(3.9%0.1)的结果是3.9(事实上,Google说我不会发疯),但是当我在Java中运行它时,我得到3.8000000000000003。我知道这是Java存储和处理加倍的结果,但有没有办法解决这个问题? 最佳答案 如果您需要精确的结果,请使用精确的类型:doubleval=3.9-(3.9%0.1);System.out.println(val);//3.8000000000000003BigDecimalx=newBigDecimal("3