在java中怎么把double类型转成int类型?

Python014

在java中怎么把double类型转成int类型?,第1张

在android开发过程中我们常常遇到数据类型的转换,其中double转int类型是最常见的

方法一:强制转换

int i

double db

i = (int) db

这种方法会丢失小数点后面的值

int i

double db

i = (int)Math.pow(db2, n)

这种方法的好处是不会丢失小数点后面的值,不过当double值过大时,即大于int类型值得范围时还是会改变原来的值;

最好的方法是将double类型转换为String类型,由String转换为int类型

public int stringToInt(String string){  int j = 0

String str = string.substring(0, string.indexOf(".")) + string.substring(string.indexOf(".") + 1)

int intgeo = Integer.parseInt(str)

return intgeo}

java中将4字节的byte数组转成一个int值的工具方法如下: \x0d\x0a/** \x0d\x0a* @param byte[]\x0d\x0a* @return int\x0d\x0a*/ \x0d\x0apublic static int byteArrayToInt(byte[] b){ \x0d\x0abyte[] a = new byte[4] \x0d\x0aint i = a.length - 1,j = b.length - 1 \x0d\x0afor (i >= 0 i--,j--) {//从b的尾部(即int值的低位)开始copy数据 \x0d\x0aif(j >= 0) \x0d\x0aa[i] = b[j] \x0d\x0aelse \x0d\x0aa[i] = 0//如果b.length不足4,则将高位补0 \x0d\x0a } \x0d\x0aint v0 = (a[0] &0xff) 回答于 2022-11-16

在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换.

string转 int会有异常产生,比如你讲abc转int 这时候就会出现NumberFormatException所以都会捕获异常或者抛出

String str = "123"

try {

    int a = Integer.parseInt(str)

} catch (NumberFormatException e) {

    e.printStackTrace()

} String str = "123"

try {

    int b = Integer.valueOf(str).intValue()

} catch (NumberFormatException e) {

    e.printStackTrace()

}