在 Java 中将 Long 转换为 Double

Mohammad Irfan 2023年1月30日 2022年5月11日
  1. 在 Java 中使用隐式转换将 Long 转换为 Double
  2. 在 Java 中使用显式转换将 Long 转换为 Double
  3. 使用 Java 中的 doubleValue() 方法将 Long 转换为 Double
  4. 使用 Java 中的 longBitsToDouble() 方法将 Long 转换为 Double
  5. 使用 Java 中的 longBitsToDouble() 方法将 Long 转换为 Double
在 Java 中将 Long 转换为 Double

本教程介绍如何在 Java 中将 long 类型转换为 double 类型。

在 Java 中,long 和 double 都用于存储数值。long 用于存储非浮点值,而 double 用于存储浮点值。两者都使用相同数量的字节(16 字节)将数据存储到内存中。

在本文中,我们将学习使用一些方法,例如 doubleValue()longBitsToDouble()parseDouble() 方法将 long 类型的值转换为 double 类型。让我们从一些例子开始。

在 Java 中使用隐式转换将 Long 转换为 Double

在此示例中,我们将 long 类型值转换为 double 类型。由于两者都使用相同的字节,因此转换很容易实现,双精度值会在长整型值后附加一个浮点数。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		long l = 97;
		System.out.println("long value: "+l);
		double d = l;
		System.out.println("double value: "+d); 
	}
}

输出:

long value: 97
double value: 97.0

在 Java 中使用显式转换将 Long 转换为 Double

虽然我们不需要对 long 到 double 转换使用显式转换以获得更好的代码,但我们可以使用显式转换。看下面的例子;我们得到与上面例子中相同的结果。

public class SimpleTesting{
	public static void main(String[] args){
		long l = 97;
		System.out.println("long value: "+l);
		double d = (double)l;
		System.out.println("double value: "+d); 
	}
}

输出:

long value: 97
double value: 97.0

使用 Java 中的 doubleValue() 方法将 Long 转换为 Double

如果你有一个 long 对象,你可以简单地使用 Long 类的 doubleValue() 方法来获取 double 类型的值。此方法不接受任何参数,但在转换 long 值后返回双精度值。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		Long l = new Long(97);
		System.out.println("long value: "+l);
		double d = l.doubleValue();
		System.out.println("double value: "+d); 
	}
}

输出:

long value: 97
double value: 97.0

使用 Java 中的 longBitsToDouble() 方法将 Long 转换为 Double

我们也可以使用 longBitsToDouble() 方法从 long 类型中获取双精度值。这是一个静态方法,属于 Double 类。这种方法实际上是进行二进制级别的转换。因此,要以可读形式获得结果,请使用 doubleToRawLongBits() 方法。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		long l = 97;
		System.out.println("long value: "+l);
		double d = Double.longBitsToDouble(l);
		System.out.println("double value: "+d);
		System.out.println(Double.doubleToRawLongBits(d));
	}
}

输出:

long value: 97
double value: 4.8E-322
97

使用 Java 中的 longBitsToDouble() 方法将 Long 转换为 Double

parseDouble() 方法接受一个字符串类型的 long 对象值并返回一个双精度值。这是 Double 类的静态方法,只能用于字符串参数。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		Long l = new Long(97);
		System.out.println("long value: "+l);
		double d = Double.parseDouble(l+"");
		System.out.println("double value: "+d);
	}
}

输出:

long value: 97
double value: 97.0

相关文章 - Java Long

相关文章 - Java Double