草庐IT

T_DOUBLE_ARROW

全部标签

Java 8 Lambda 将 Number[][] 转换为 double[][]

Number[][]intArray=newInteger[][]{{1,2,3},{4,5,6},{7,8,9}};double[][]doubleArray=Arrays.stream(intArray).forEach(pArray->Arrays.stream(pArray).mapToDouble(d->d.doubleValue()).toArray()).toArray();我想将Number[][]转换为double[][]。上面的lambda不起作用,外部的toArray不编译。Arrays.stream(intArray):返回Integer[]的流forEach:

java - 将 Double 转换为 long 而不会丢失精确值

我有一个Double对象,它在转换为long值时丢失了准确的值。Doubled=1.14*100System.out.println(d.longValue());上面的语句将打印:113。我要打印114。 最佳答案 如果您需要使用Math.round的确切114值:doubled=1.14*100;System.out.println(Math.round(d)); 关于java-将Double转换为long而不会丢失精确值,我们在StackOverflow上找到一个类似的问题:

java - 获取 -1 和 1 之间的随机 double 值

我正在用Java创建一个神经网络,需要创建一个方法来初始生成随机权重。我需要创建一个返回-1和1之间的随机double值的函数,但不确定这样做的逻辑,因此非常感谢任何帮助。 最佳答案 您可以使用Random类的nextDouble()方法。Randomrng=newRandom();//togetadoublebetween-1and1returnrng.nextDouble()*2-1;//rng.nextDouble()isbetween0and1 关于java-获取-1和1之间的随

java - 如何将 java.util.List[java.lang.Double] 转换为 Scala 的 List[Double]?

我想以高效的方式将Javadouble列表(java.util.List[java.lang.Double])转换为Scaladouble列表(List[Double])。目前,我正在对列表进行映射,将每个double值转换为Scaladouble值。我不想映射每个值,而是正在寻找一种更有效的方法。importcollection.JavaConversions._importcollection.mutable.Buffervalj:java.util.List[java.lang.Double]=Buffer(newjava.lang.Double(1.0),newjava.lan

c# - Double.doubleToLongBits 在 C# 中等效?

有一个Java方法Double.doubleToLongBits基本上获取一个double并返回一个具有相同位的long。我如何在C#中执行此操作?谢谢 最佳答案 BitConverter.DoubleToInt64Bits是一个不错的选择。http://msdn.microsoft.com/en-us/library/system.bitconverter.doubletoint64bits.aspx 关于c#-Double.doubleToLongBits在C#中等效?,我们在Sta

java - 在 Java 中复制 double[] 最快的方法是什么?

这个问题在这里已经有了答案:.clone()orArrays.copyOf()?(4个答案)关闭9年前。简单的问题,在Java中复制double组的最快方法是什么。我目前这样做...publicstaticdouble[]clone_doubles(double[]from){double[]to=newdouble[from.length];for(inti=0;i它也进行分配以避免溢出,但如果有更快的方法,我会将分配与副本分开。我看过Arrays.copyOf()和System.arraycopy()但我想知道是否有人有任何巧妙的技巧。编辑:复制一个double[][]怎么样?

java - 对于字段为 double d = 2.2250738585072012e-308 的类,编译会挂起

我遇到了一个有趣的情况。一位同事提交了一些更改,这些更改不会在我的机器上从IDE(Eclipse)或命令行(Maven)编译。问题表现在编译过程占用100%CPU,只有kill进程才能停止。经过一番分析,找到并解决了问题的原因。原来是其中一个界面中的一行“doubled=2.2250738585072012e-308”(末尾没有分号)。以下片段复制了它。publicclassWeirdCompilationIssue{doubled=2.2250738585072012e-308}为什么编译器会挂起?语言边缘案例? 最佳答案 这是J

java - nextDouble() 在我输入 double 值时抛出 InputMismatchException

importjava.util.*;classAverager{publicstaticdoubleunlimited(){intcount=0;doublesum=0;Scannerscan=newScanner(System.in);while(scan.hasNext()){doubled=scan.nextDouble();sum+=d;count++;}doubleave=sum/count;returnave;}publicstaticvoidmain(String[]args){System.out.println(unlimited()+"\n");}}当我使用整数时没

Java:检查两个 double 值是否匹配特定的小数位数

比较这两个值应得出“真”:53.917333333333353.9173 最佳答案 如果您希望a=1.00001和b=0.99999被识别为相等:returnMath.abs(a-b)否则,如果您希望a=1.00010和b=1.00019被识别为相等,并且a和b是积极的而且不是很大:returnMath.floor(a*10000)==Math.floor(b*10000);//compareby==isfineherebecausebothsidesareintegralvalues.//doublecanrepresentint

java - A Double 中有多少位小数(Java)

Java中是否有任何内置函数可以告诉我double中有多少位小数。例如:101.13=2101.130=31.100=31.1=1-3.2322=4etc.如果需要,我很乐意先转换为另一种类型,我曾考虑过先转换为bigdecimal,但没有成功。 最佳答案 如果像这样将数字作为字符串传递,则可以使用BigDecimal.scale():BigDecimala=newBigDecimal("1.31");System.out.println(a.scale());//prints2BigDecimalb=newBigDecimal("