Avatar ·

Kotlin: Void, Unit और Nothing — क्या अंतर है और कब क्या उपयोग करें?

सभी को नमस्ते! मैंने हाल ही में Kotlin सीखना शुरू किया है और Java से आया हूँ। Java में मैं उन methods के लिए void का उपयोग करता था जो कुछ return नहीं करते। लेकिन Kotlin में मैं तीन समान अवधारणाएँ देखता हूँ: Void, Unit और Nothing। और मैं भ्रमित हो गया हूँ।

\n\n

उदाहरण के लिए, मैं एक function लिखता हूँ जो बस एक अभिवादन print करता है:

\n\n
fun greet(name: String) {\n    println("Hello, $name!")\n}\n
\n\n

Compiler कहता है कि return type Unit है। लेकिन मैं इसे ऐसे भी लिख सकता हूँ:

\n\n
fun greet(name: String): Unit {\n    println("Hello, $name!")\n}\n
\n\n

और मैंने किसी और के कोड में Void (बड़े अक्षरों में) और Nothing भी देखा है। जब मैंने return type के रूप में Nothing का उपयोग करने की कोशिश की, तो compiler ने