स्कैला-2.11 के अनुसार, इन विधियों के पास अलग-अलग प्रदर्शन हो सकते हैं। देता 2423834 के बारे में nanos समय (समय-समय पर बदलती रहती है) मेरी amd64 कंप्यूटर पर इस रनिंग
val bigArray = Array.fill(1000000)(0)
val beginTime = System.nanoTime()
var i = 0
while (i < 2000000000) {
i += 1
bigArray.length
}
val endTime = System.nanoTime()
println(endTime - beginTime)
sys.exit(-1)
: उदाहरण के लिए, इस कोड पर विचार करें।
अब, अगर मैं length
विधि size
पर बदलता हूं, तो यह लगभग 7076471 9 नैनो समय बन जाएगा।
यह 20x धीमी से अधिक है।
ऐसा क्यों होता है? मैंने इसे खोद नहीं दिया, मुझे नहीं पता।लेकिन परिदृश्य हैं जहां length
और size
काफी भिन्न प्रदर्शन करते हैं।
मैं व्यक्तिगत रूप से एक अर्थपूर्ण नाइट-पिकर हूं, इसलिए मैं केवल उन चीजों के लिए 'लंबाई' का उपयोग करता हूं जो रैखिक या अनुक्रमिक और 'आकार' अन्यथा हैं। –