java - "if" statement block doesn't work correctly -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 23 उत्तर

मुझे वास्तव में पता नहीं है यहाँ क्या हो रहा है, लेकिन मैं सर्वर-क्लाइंट अनुप्रयोग लिख रहा हूं और क्लाइंट सर्वर पर एक स्ट्रिंग भेजता है। मुझे सर्वर पर "x" स्ट्रिंग भेजने की आवश्यकता है, इसलिए यह कोड 1 चलने लगती है, लेकिन जब मैं यह करता हूं, सर्वर को कोड 3 चलाता है। सबसे मजेदार बात यह है कि System.out.println (x); कंसोल में "a" प्रिंट करता है।

यहां सर्वर कोड का एक टुकड़ा है (win7, javac compiler पर चलता है) :

<पूर्व> sInput = नया ऑब्जेक्ट इनटस्टस्ट्रीम (सॉकेट.जेट इन्पुटस्ट्रीम ()); SOutput = नया ऑब्जेक्टऑटपुटस्ट्रीम (socket.getOutputStream ()); स्ट्रिंग x = (स्ट्रिंग) sInput.readObject (); Println (x); यदि (x == "ए") {/ * * code1 * /} और यदि (x == "b") {/ * * code2 * /} और {/ * * code3 * /}

और यह वही है जो क्लाइंट करता है (ओएसएक्स, जावाक कंपाइलर चलाता है):

  sInput = नया ऑब्जेक्ट इनटस्टस्ट्रीम (सॉकेट.जेट इन्पुटस्ट्रीम ()); SOutput = नया ऑब्जेक्टऑटपुटस्ट्रीम (socket.getOutputStream ()); स्ट्रिंग x = "a"; sOutput.writeObject (x);  

मुझे इसे कैसे हल करना चाहिए?

पीएस मुझे अपवाद घोषणापत्र के बारे में पता है, उन्हें कोड कम करने के लिए निकाल दिया जाता है।

उपयोग की तुलना करने के लिए समान विधि का उपयोग करें दो तारों के मूल्य अधिक जानकारी के लिए देखें।


Comments

Popular posts from this blog

scala - Play Framework - how to bind form to a session field -

c++ - Why does Visual Studio Release build break on non-executing code line -

Firefox reacting to JQuery setTimeout that doesn't apply -