2010-09-29 25 views
14

मुझे वास्तव में पता नहीं है कि यह संभव है या नहीं। लेकिन मैं ऐसी जगह पर हमला कर रहा हूं जहां मैं एक int मान देखना चाहता हूं null या नहीं, विभिन्न तरीकों को कॉल करने के लिए।यह जांचने के लिए कि कोई int शून्य या खाली नहीं है या नहीं?

क्या ऐसा करने का कोई तरीका है?

वास्तव में, चर एक null मूल्य के साथ एक ब्राउज़र से आता है। मैं Integer पर घोषणा int नहीं बदल सकता। क्योंकि इसका अपना परिणाम है।

कोई सुझाव?

+0

"उस चर एक अशक्त मूल्य के साथ एक ब्राउज़र से आता है" - क्या आपको लगता है कि द्वारा मतलब है? बोझो द्वारा बताए गए अनुसार, यह स्पष्ट रूप से असंभव है। –

+0

@ कोनराड रुडॉल्फ: आपने इसके लिए वोट दिया: "वह चर एक ब्राउज़र से शून्य मूल्य के साथ आता है"। मैंने बोझो के जवाब की मदद से मेरी समस्या हल की "तो यह कनवर्टर है जो तय करता है कि 0 सेट करना है या नहीं, इंटेल शून्य और असंभव नहीं हो सकता है। लेकिन एक कनवर्टर शून्य मान को '0' में बदल सकता है ताकि इसे एक चर चर में असाइन किया जा सके। अब मुझे बताओ कि तुमने वोट क्यों दिया। मेरे प्रश्न के साथ गलत क्या है। मैं स्पष्ट रूप से शुरू होता हूं "मैं वास्तव में नहीं जानता कि यह संभव है या नहीं"। इसका क्या मतलब है!!! मैं वास्तव में बी 4 tht नहीं जानता ... वोटिंग के नीचे दो बार बी 4 सोचो –

+0

मैंने डाउनवोट नहीं किया। आपका प्रश्न मान्य हो सकता है (मैं नहीं बता सकता, लेकिन जब मैं नहीं कर सकता तो मैं डाउनवोट नहीं करता) - मैं सिर्फ स्पष्टीकरण मांग रहा था। –

उत्तर

31

int चर null

नहीं हो सकता एक nullint करने के लिए परिवर्तित किया जा रहा है, तो यह कनवर्टर जो 0, फेंक अपवाद सेट, या सेट एक और मूल्य (Integer.MIN_VALUE) की तरह फैसला करता है। अपने स्वयं के कनवर्टर प्लग करने का प्रयास करें।

0

संभवतः ब्राउज़र कुछ पूर्णांक मान की स्ट्रिंग प्रतिनिधित्व रिटर्न? वास्तव में int शून्य नहीं हो सकता है। हो सकता है कि आप शून्य के लिए जांच सकें, यदि मान शून्य नहीं है, तो स्ट्रिंग प्रस्तुति को int में परिवर्तित करें।

1

अपने पूर्णांक चर एक वर्ग स्तर चर (उदाहरण के चर) के रूप में घोषित किया जाता है अगर यह 0 पर चूक की जाएगी लेकिन यह संकेत नहीं है अगर ग्राहक से भेजे गए मान 0 या एक अशक्त था। हो सकता है कि आप एक सेटर विधि हो सकें जिसे क्लाइंट द्वारा भेजे गए मान को प्रारंभ/सेट करने के लिए कहा जा सकता है। तो आप अपने सूचक मूल्य .. मुझे लगता है कि आप इस तरह से कोड के बारे में पूछ रहे हैं परिभाषित कर सकते हैं,

2

अशक्त इंगित करने के लिए कुछ नकारात्मक मूल्य हो सकता है।

int count = (request.getParameter("counter") == null) ? 0 : Integer.parseInt(request.getParameter("counter")); 
-3

एक पूर्णांक नल नहीं हो सकता लेकिन वहाँ क्या आप क्या करना चाहते करने का एक बहुत आसान तरीका है। एक if-then कथन का प्रयोग करें जिसमें आप सभी संभावित मानों के विरुद्ध पूर्णांक का मान जांचते हैं।

उदाहरण:

int x; 

//Some Code... 

if (x<=0 || x>0){ 
    //what you want the code to do if x has a value 
} else { 
    //what you want the code to do if x has no value 
} 

अस्वीकरण: मैं यह सोचते हैं कि जावा स्वचालित रूप से 0 करने के लिए संख्या के मूल्यों को निर्धारित नहीं करता है तो यह एक मूल्य नहीं देखता।

+1

फ़ील्ड में 0 का डिफ़ॉल्ट मान है; स्थानीय चर ** ** को एक मान असाइन किया जाना चाहिए या कोड संकलित नहीं होगा। यह शर्त किसी वैध कोड के लिए हमेशा सत्य होगी। – kiheru

+0

असल में मेरे लिए काम किया। –

3

मुझे लगता है कि आप चर अगर int प्रकार चर प्रारंभ नहीं किया गया है यह नहीं किया जा सकता क्योंकि -1, की तरह एक मूल्य के प्रारंभ कर सकते हैं। जब आप यह देखना चाहते हैं कि यह वह मूल्य नहीं है जिसे आप चाहते हैं तो आप यह जांच सकते हैं कि यह -1 है या नहीं।

0

पूर्णांक नल नहीं हो सकता। यदि आप int डिफ़ॉल्ट मान के लिए कोई मान निर्दिष्ट नहीं कर रहे हैं तो 0 होगा। यदि आप शून्य के लिए जांचना चाहते हैं तो घोषणा में इंटीजर के रूप में int बनाओ। फिर इंटीजर ऑब्जेक्ट शून्य हो सकता है। तो, आप जांच सकते हैं कि यह कहां शून्य है या नहीं। यहां तक ​​कि जावैक्स बीन सत्यापन में भी आप @NotNull एनोटेशन के लिए त्रुटि प्राप्त नहीं कर पाएंगे जब तक चर को इंटीजर के रूप में घोषित नहीं किया जाता है।

+0

यह वास्तव में एक टिप्पणी है, जवाब नहीं। थोड़ा और प्रतिनिधि के साथ, [आप टिप्पणियां पोस्ट करने में सक्षम होंगे] (// stackoverflow.com/privileges/comment)। – manetsus

1
public class Demo { 
    private static int i; 
    private static Integer j; 
    private static int k = -1; 

    public static void main(String[] args) { 
     System.out.println(i+" "+j+" "+k); 
    } 
} 

उत्पादन: 0 अशक्त -1

संबंधित मुद्दे