के रूप में विभाजित करना क्यों है, यह है कि आउटपुट []
है और [1]
नहीं है?पाइप प्रतीक के साथ एक स्ट्रिंग को डिलीमीटर
String input="1|2|3";
String[] values= input.split("|");
System.out.println("[" + values[0] + "]");
// Output: []
हालांकि, अगर हम विभाजक बदलते हैं, तो आउटपुट [1]
है।
String input="1;2;3";
String[] values= input.split(";");
System.out.println("[" + values[0] + "]");
// Output: [1]
'विभाजन (स्ट्रिंग)' एक 'regex स्ट्रिंग' लेता है और इस तरह के रूप '|' को 'रेगेक्स' या 'के रूप में व्याख्या किया गया है, इसलिए यह कुछ भी विभाजित नहीं करता है। आपको '|' से बचकर परीक्षण करना चाहिए और 'मानों' –
के मानों को जांचना चाहिए, यह प्रत्येक वर्ण को विभाजित करता है, साथ ही प्रारंभिक खाली स्ट्रिंग –