มีตัวแปรท้องถิ่นที่ไม่แน่นอนในฟังก์ชั่นที่ใช้ภายในเท่านั้น (เช่นฟังก์ชั่นไม่มีผลข้างเคียงอย่างน้อยก็ไม่ได้ตั้งใจ) ยังถือว่าเป็น "ไม่ทำงาน"?
เช่นในการตรวจสอบรูปแบบหลักสูตร "ฟังก์ชั่นการทำงานกับ Scala" จะถือว่าvar
การใช้งานไม่ถูกต้อง
คำถามของฉันหากฟังก์ชั่นไม่มีผลข้างเคียงการเขียนโค้ดสไตล์ที่จำเป็นยังคงหมดกำลังใจอยู่หรือ?
เช่นแทนที่จะใช้การเรียกซ้ำหางที่มีรูปแบบสะสมมีอะไรผิดปกติกับการทำท้องถิ่นสำหรับวงและการสร้างท้องถิ่นที่ไม่แน่นอนListBuffer
และเพิ่มไปตราบใดที่การป้อนข้อมูลที่ไม่ได้มีการเปลี่ยนแปลงอย่างไร
หากคำตอบคือ "ใช่พวกเขาจะหมดกำลังใจเสมอแม้ว่าจะไม่มีผลข้างเคียง" แล้วอะไรคือเหตุผล?
var
ไม่สามารถใช้งานได้เสมอ Scala มี vals ขี้เกียจและการเพิ่มประสิทธิภาพการเรียกซ้ำหางซึ่งช่วยให้หลีกเลี่ยง vars อย่างสมบูรณ์