swift - What is the expected result of subscripting a range? -
i can't find documentation explaining subscripting range supposed do. i'd expect yield nth value of range, seems return subscripted value, itself.
let range = 10...20 let valuefromrange = range[2]
in case, i'd expect valuefromrange
equal 12
, it's equal 2
. seems case ranges (or, @ least ranges of type range<int>
, range<double>
).
is value i'm supposed get? besides defying think commonly expected behavior, behavior useless.
you should convert range array
if want subscript that:
let range = array(10..20) range[2] // returns 12
while can add range.startindex
, subscript directly particular range, can't subscript strided ranges @ without converting them:
let range = (10..20).by(3) range[2] // error: 'stridedrangegenerator<int>' not have member named 'subscript'
Comments
Post a Comment