में अलग-अलग काम करता है तो मैं और true
मानों के बीच if
खंड के बीच अंतर जानना चाहता हूं। जब मैं true
के बजाय Boolean.TRUE
का उपयोग करता हूं तो यह मुझे एक संकलन त्रुटि क्यों देता है (कि एक मान प्रारंभ नहीं किया जा सकता है)।यदि (Boolean.TRUE) {...} और यदि (सत्य) {...} जावा
public class Test {
public void method1() {
int x;
if(Boolean.TRUE) {
x = 200;
}
System.out.println("x: " + x); // Compilation error
}
public void method2() {
int x;
if(true) {
x = 200;
}
System.out.println("x: " + x); // Compiles fine
}
}
इसका कोई मतलब नहीं है। सत्य की सत्यता की जांच करने का क्या मतलब है? –
@ लॉरेंसएइल्लो: आप प्रश्न का बिंदु खो रहे हैं। एक मामले में संकलक सही ढंग से अभिव्यक्ति की पहचान कर सकता है हमेशा दूसरे में, यह नहीं कर सकता है। –
यह एक त्रुटि फेंकता है, लेकिन यह है कि "मान x प्रारंभ नहीं किया जा सकता है"। और ऐसा इसलिए है क्योंकि बूलियन के पीछे। सच है कि 'झूठा' भी छिपा सकता है। – 1Darco1