/ / डुप्लिकेट सरणी की तुलना कैसे करें - जावा, सरणी

डुप्लिकेट सरणी - जावा, सरणी की तुलना कैसे करें

हाल ही में, मुझे लगा कि आप इस तरह एक सरणी डुप्लिकेट कर सकते हैं

System.arraycopy(src,0,dup,0,src.length);

हालांकि, भले ही आप दो तुलना करते हैं, जब आप उनका उपयोग करते हैं

if(src==dup)
...//print true
else if(src!=dup)
...//print false

यह हमेशा झूठा प्रिंट करेगा। क्या किसी भी सरणी को डुप्लिकेट करने के लिए वैसे भी है जो मूल के साथ नहीं बदलता है जबकि उन दोनों की तुलना सही ढंग से करने में सक्षम होता है?

उत्तर:

उत्तर № 1 के लिए 1

जैसे ही अमाफौज ने अपने उत्तर में कहा था, दो अलग-अलग सरणी के संदर्भों की तुलना की जाती है (जिस तरह से आपने अपनी पोस्ट में लिखा था)।

इसलिए, तत्वों की तुलना करने में सक्षम होने के लिए, आपको उनके माध्यम से लूप करना चाहिए।

आप ऐसा कर सकते हैं Java.util.Arrays आयात करें, और यह करें:

if(Arrays.equals(src, dup))
System.out.println("Equal");
else
System.out.println("Not Equal");

जवाब के लिए 0 № 2

समानता परीक्षण केवल संदर्भों की तुलना करता है, सामग्री नहीं, इसलिए यह हमेशा दो अलग-अलग सरणी संदर्भों के लिए झूठी वापसी करेगा।


जवाब के लिए 0 № 3

आपको उपयोग करने की ज़रूरत है

Arrays.equals()