Long 是比 int 更大的數據類型,我們需要顯式地執行類型轉換來進行轉換。類型轉換是通過類型轉換運算符執行的。本質上有三種方法可以將 long 轉換為 int:
- 由 type-casting
- 使用 toIntExact() 方法
- 使用 Long 包裝類的 intValue() 方法。
1. 使用顯式類型轉換
在類型轉換中,程序員在程序設計期間使用轉換運算符將數據類型轉換為另一種數據類型。在類型轉換中,將數據類型轉換為另一種數據類型時,目標數據類型可能小於源數據類型,因此也稱為窄化轉換。
語法/聲明:
destination_datatype = (target_datatype)variable; () is a casting operator.
target_datatype:是我們要轉換的源數據類型的數據類型。
類型轉換示例:
float x; byte y; ... ... y=(byte)x;
Java
// Java Program to convert long to int
import java.util.*;
class GFG {
public static void main(String[] args)
{
// long value
long longnum = 10000;
// explicit type casting from long to int
int intnum = (int)longnum;
System.out.println("Converted type:"+ ((Object)intnum).getClass().getName());
System.out.println("Converted int value is:"
+ intnum);
}
}
輸出
Converted type:java.lang.Integer Converted int value is:10000
2.使用Java Math toIntExact(long value)用法及代碼示例方法
用法:
public static int toIntExact(long value)
參數:
- value:長期價值
返回:
此方法以 int(integer) 形式返回輸入參數。
異常:
它拋出 ArithmeticException - 如果結果溢出 int
Java
// Java Program to convert long to int
class Main {
public static void main(String[] args) {
// create long variable
long value1 = 523386L;
long value2 = -4456368L;
// change long to int
int num1 = Math.toIntExact(value1);
int num2 = Math.toIntExact(value2);
// print the type
System.out.println("Converted type:"+ ((Object)num1).getClass().getName());
System.out.println("Converted type:"+ ((Object)num2).getClass().getName());
// print the int value
System.out.println(num1); // 52336
System.out.println(num2); // -445636
}
}
輸出
Converted type:java.lang.Integer Converted type:java.lang.Integer 523386 -4456368
3.使用Java Integer intValue()用法及代碼示例Long包裝類的方法
用法:
public int intValue()
參數:該方法不接受任何參數。
返回值:該方法返回轉換為整數類型後對象表示的數值。
Java
// Java Program to convert long to int using intValue()
// method
class GFG {
public static void main(String[] args)
{
// Long object
Long longnum = 100L;
// Converting Long object to int primitive type
int intnum = longnum.intValue();
// printing the type
System.out.println("Converted type:"
+ ((Object)intnum).getClass().getName());
// printing the int value
System.out.println("Converted int value:"
+ intnum);
}
}
輸出
Converted type:java.lang.Integer Converted int value:100
相關用法
- Java TimeZone getOffset(int, int, int, int, int, int)用法及代碼示例
- Java ZoneOffset ofHoursMinutesSeconds(int, int, int)用法及代碼示例
- Java SimpleTimeZone setStartRule(int, int, int)用法及代碼示例
- Java SimpleTimeZone setEndRule(int, int, int)用法及代碼示例
- Java HijrahDate of(int, int, int)用法及代碼示例
- Java JapaneseDate of(int, int, int)用法及代碼示例
- Java JapaneseDate of(JapaneseEra,int, int, int)用法及代碼示例
- Java MinguoChronology date(int, int, int)用法及代碼示例
- Java MinguoDate of(int, int, int)用法及代碼示例
- Java ThaiBuddhistChronology date(int, int, int)用法及代碼示例
- Java JapaneseChronology date(int, int, int)用法及代碼示例
- Java IsoChronology date(int, int, int)用法及代碼示例
- Java int轉long用法及代碼示例
- Java Math addExact(long x, long y)用法及代碼示例
- Java Math subtractExact(long x, long y)用法及代碼示例
- Java Longs.checkedSubtract(long a, long b)用法及代碼示例
- Java Duration ofSeconds(long, long)用法及代碼示例
- Java Guava LongMath gcd(long a, long b)用法及代碼示例
- Java Guava LongMath mean(long x, long y)用法及代碼示例
- Java Guava LongMath mod(long x, long m)用法及代碼示例
- Java LongMath.checkedAdd(long a, long b)用法及代碼示例
- Java Longs.indexOf(long[] array, long[] target)用法及代碼示例
- Java LongMath.divide(long, long, RoundingMode)用法及代碼示例
注:本文由純淨天空篩選整理自lavishgarg26大神的英文原創作品 Java Program to Convert long to int。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。