น่าน, อินฟินิตี้ - 1

“สวัสดี อามีโก้!”

"วันนี้ฉันจะบอกคุณเกี่ยวกับสิ่งที่น่าสนใจใน Java"

" อินฟินิตี้ "

ใน Java ชนิด คู่มีค่าพิเศษสำหรับค่าอนันต์บวกและค่าอินฟินิตี้ลบ จำนวนบวกหารด้วย 0.0 จะให้ค่าอนันต์เป็นบวกและจำนวนลบคือค่าอนันต์ที่เป็นลบ

แนวคิดเหล่านี้แสดงด้วยค่าคงที่คู่พิเศษ:

รหัส คำอธิบาย
public static final double POSITIVE_INFINITY = 1.0 / 0.0;
อินฟินิตี้บวก
public static final double NEGATIVE_INFINITY = -1.0 / 0.0;
อินฟินิตี้เชิงลบ

"แล้วมันได้ผลจริงเหรอ"

"ใช่ ดูนี่:"

รหัส
double inf = Double.POSITIVE_INFINITY;
System.out.println(inf); // Infinity
System.out.println(inf + 1); // Infinity+1 == Infinity
System.out.println(inf + 10); // Infinity+10 == Infinity
System.out.println(inf * -1); // Equal to negative infinity
Double.NEGATIVE_INFINITY
เอาต์พุตหน้าจอ:
Infinity
Infinity
Infinity
-Infinity

"มันได้ผลจริงๆ แล้วถ้าเรามีความกำกวมล่ะ? เช่น ถ้าเราลบอินฟินิตี้ออกจากอินฟินิตี้?"

"สำหรับสิ่งนี้ Java มีแนวคิดอื่น: ไม่ใช่ตัวเลข ( NaN )"

"มันใช้ในสถานการณ์ต่างๆ:"

1)  สตริงกำลังถูกแปลงเป็นตัวเลข แต่มีตัวอักษร ผลลัพธ์คือ NaN

2)อินฟินิตี้ลบอินฟินิตี้ ผลลัพธ์คือ NaN

3)สถานการณ์อื่น ๆ อีกมากมายที่เราคาดหวังตัวเลข แต่จบลงด้วยบางสิ่งที่ไม่ได้กำหนด

"แล้วคุณจะทำอะไรได้บ้างกับ Infinity และ NaN"

"ด้วย NaN มันง่ายมาก การดำเนินการใด ๆ ที่เกี่ยวข้องกับ NaN จะส่งผลให้ NaN"

"และด้วยความไม่มีที่สิ้นสุด คุณสามารถทำสิ่งต่อไปนี้ได้:"

การแสดงออก ผลลัพธ์
n ÷ ±Infinity
0
±Infinity × ±Infinity
±อินฟินิตี้
±(something other than zero) ÷ 0
±อินฟินิตี้
Infinity + Infinity
อินฟินิตี้
±0 ÷ ±0
น่าน
Infinity - Infinity
น่าน
±Infinity ÷ ±Infinity
น่าน
±Infinity × 0
น่าน

"นั่นสมเหตุสมผลแล้ว ขอบคุณ Rishi"