ฉันต้องการเน้นที่คำจำกัดความที่เข้มงวดของทั้งสองคำ
Iterable
คือการย้ำสิ่งต่าง ๆ และเข้าถึงองค์ประกอบทีละตัว
ฉันคิดว่าคำEnumerable
นี้มาจากเครื่องกลึง มันเกี่ยวกับความสามารถในการแสดงรายการองค์ประกอบทีละรายการในลำดับที่เหมาะสม สิ่งที่สามารถแสดงรายการออกมาทีละคนจะต้องมีcountable
แต่ละคนมีดัชนีการติดต่อที่ไม่ซ้ำกัน รับองค์ประกอบคุณจะได้รับดัชนีที่ไม่ซ้ำกัน รับดัชนีคุณสามารถค้นหาองค์ประกอบที่เป็นไปได้ที่เกี่ยวข้องกับดัชนีนั้นเท่านั้น
กล่าวอีกนัยหนึ่งก็Enumerable
คือความสามารถในการสร้างองค์ประกอบ ตัวอย่างเช่นภาษาการเขียนโปรแกรมบางส่วนHaskell
ได้นำแนวคิดนี้ไปใช้ มีคลาสชนิดEnumและChar
เป็นหนึ่งในอินสแตนซ์
Prelude> fromEnum True
1
Prelude> fromEnum False
0
Prelude> toEnum 1 :: Bool
True
Prelude> fromEnum 'a'
97
Prelude> enumFromTo 'a' (toEnum 122 :: Char)
"abcdefghijklmnopqrstuvwxyz"