Java'da long'u int'ye dönüştürme

Java Da Long U Int Ye Donusturme



Java'da, geliştiricinin belleği etkili bir şekilde kaydetmesi gereken belirli durumlar olabilir. Örneğin, nispeten daha küçük bir değer aralığına sahip veri tipini tahsis etmek veya fazla değerlerden kurtulmak. Bu gibi durumlarda, “ uzun ' ile ' int” Java'da aritmetik işlemleri, kod karmaşıklığını kolaylaştırarak yürürlüğe girer ve nispeten daha az yürütme süresi alır.

Bu makale, Java'da 'uzun' 'int' e dönüştürmeyi ayrıntılı olarak ele alacaktır.

Java'da “uzun” ve “int” nedir?

uzun ” Java aralıklarını girin “ -9223372036854775808 ' ile ' 922337203685477580 ” ve tahsis edilir “ 64 ” bit. “ int ” tip, ancak, yer kaplar ” 32 ” ile “ arasında değişen bitler -2147483648 ' ile ' 2147483647 ”. Bu, herhangi bir sayıda “ int ” türleri kolayca bir “ ile desteklenebilir uzun ” yazın ama çoğu zaman her zaman böyle değildir.







Java Kullanarak 'long' 'int' e Nasıl Dönüştürülür?

Dönüştürmek ' uzun ' ile ' int ” Java'da aşağıdaki yaklaşımları uygulayın:



Yaklaşım 1: “Math.toIntExact()” Yöntemini Kullanarak Java'da long'u int'ye dönüştürün

Math.toIntExact() Java'daki ” yöntemi, “ int ' sağlanan değer ' uzun ' argüman. Bu yöntem basitçe “geçmek için uygulanabilir. uzun ” değerini argümanı olarak alın ve bir tamsayı olarak döndürün.



Sözdizimi





Matematik . tam olarak ( uzun val )

Bu sözdiziminde, “ uzun val ”, “ olarak döndürülmesi gereken değeri ifade eder. int ”.

Örnek
Aşağıdaki örneği gözden geçirelim:



halk sınıf uzun çizgi2 {
halk statik geçersiz ana ( Sicim [ ] argümanlar ) {
uzun seçim1 = 8624675L ;
uzun val2 = 3482398L ;
int güncellemeVal1 = Matematik . tam olarak ( seçim1 ) ;
int updVal2 = Matematik . tam olarak ( val2 ) ;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + güncellemeVal1 ) ;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + updVal2 ) ;
}
}

Bu kod parçacığında aşağıdaki adımları gerçekleştirin:

  • İlk olarak, ikisini başlatın ' uzun ” değerler.
  • Not: Belirtilen ' L Değerlerdeki ”, “ ifadesini temsil eder ve ayırt eder. uzun 'değerler' int ” değerler.
  • Bundan sonra, “ Math.toIntExact() ” yöntemini iki kez kullanın ve hem ilklendirilen uzun değerleri, hem de onları tamsayılara dönüştürmek için parametresi olarak toplayın.
  • Son olarak, dönüştürülen tamsayı değerlerini konsolda günlüğe kaydedin.

Çıktı

Yukarıdaki sonuçta, karşılık gelen tamsayı değerlerinin görüntülendiği analiz edilebilir.

Not: Dönüştürme (uzun ila int) işlemi, “ uzun ”, “ maksimum değerinden küçük veya ona eşittir int ”, yani (2147483647). Diğer durumda ise bir hata ile karşılaşılır ve veri kaybı da söz konusu olabilir.

Gösteri
Sınırlamaya yol açan tartışılan kavramı gözlemleyelim:

Yukarıdaki örnekte, basitçe ikincisini artırın ' uzun ” değerini girin ve dönüştürmeyi gerçekleştirin. Bu, “ ile karşılaşmaya yol açacaktır. Tamsayı taşması ” sınırlaması çünkü dönüştürülen değer “ int ” maksimum sınır.

Yaklaşım 2: 'Dar Tür Belirleme' Kullanarak Java'da long'u int'ye dönüştürün

daktilo ”, bir ilkel veri türünün değerini diğerine atamaya karşılık gelir. Bu durumda, “ daktilo daraltma ”, daha yüksek veri türü olduğundan, yani “ uzun ” alt veri tipine dönüştürülür “ int ”. Bu, basitçe dönüştürülmesi gereken değeri ve ardından istenen türü parantez içine alarak elde edilebilir.

Örnek
Aşağıdaki örnek, tartışılan kavramı açıklamaktadır:

halk sınıf uzun vadeli {
halk statik geçersiz ana ( Sicim [ ] argümanlar ) {
uzun seçim1 = 647467L ;
uzun val2 = 348 239L ;
int güncellemeVal1 = ( int ) seçim1 ;
int updVal2 = ( int ) val2 ;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + güncellemeVal1 ) ;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + updVal2 ) ;
}
}

Yukarıdaki kod satırlarında:

  • Aynı şekilde, ikisini ' uzun ” değerler.
  • Bir sonraki adımda, “ dar daktilo ” dönüştürülmesi gereken değeri ve ardından istenen türü koyarak yaklaşım, yani, “ int ”.
  • Son olarak, dönüştürülen ' int ” konsoldaki değerler.

Çıktı

Bu çıktıda, “ uzun 'değerler' dönüştürülür int ” değerleri, uygun şekilde.

Yaklaşım 3: 'intValue()' Yöntemini Kullanarak Java'da Uzun Nesneyi int'ye Dönüştürün

intDeğer() Java'daki ” yöntemi, ilişkili sayının değerini “ biçiminde döndürür. int ”. Bu yöntem, ilişkili uzun ' basitçe dönüştürmek için uygulanabilir. nesneler ” tamsayılara.

Örnek
Dönüşümü gerçekleştirmek için aşağıda verilen örneği inceleyin:

halk sınıf uzun çizgi3 {
halk statik geçersiz ana ( Sicim [ ] argümanlar ) {
Uzun val1 = yeni Uzun ( 8624675L ) ;
Uzun val2 = yeni Uzun ( 3482398L ) ;
int güncellemeVal1 = seçim1. intDeğer ( ) ;
int updVal2 = val2. intDeğer ( ) ;;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + güncellemeVal1 ) ;
Sistem. dışarı . yazdır ( 'Tamsayı değeri: ' + updVal2 ) ;
}
}

Yukarıdaki kod bloğunda:

  • Her şeyden önce, iki 'oluşturun uzun “ aracılığıyla nesneler yeni ” anahtar kelime ve “ Uzun() ” sırasıyla yapıcı.
  • Yapıcı parametrelerinde, “ dönüştürülmesi gereken uzun değerleri belirtin. int ”.
  • Şimdi, “ intDeğer() ”Metodu ile hem yaratılan nesneleri hem de birikenleri dönüştürün” uzun ” değerleri “ tamsayılar ” ve onları görüntüleyin.

Çıktı

Yukarıdaki sonuç, nesne değerlerinin “ tamsayılar ” uygun şekilde.

Çözüm

Java'da long'u int'ye dönüştürmek için “ Math.toIntExact() ” yöntemi, “ Dar Tip Tahmini ” yaklaşımı veya “ intDeğer() ' yöntem. Bu yaklaşımlar, başlatılan uzun değeri ve nesneyi, ' uzun ” dönüştürülmesi gereken değer, “ maksimum değerini aşamaz. int ”. Bu blog, Java kullanarak long'u int'ye dönüştürmek için yönlendirilir.