У меня есть список, как ["a","ab","abc", "abcd"]
список Фильтр элементов по длине в Haskell
Как получить список, который имеет только те элементы, которые имеют длину> 2.
Средства результат ["abc","abcd"].
У меня есть список, как ["a","ab","abc", "abcd"]
список Фильтр элементов по длине в Haskell
Как получить список, который имеет только те элементы, которые имеют длину> 2.
Средства результат ["abc","abcd"].
ответ Натали совершенно правильно, но в качестве альтернативной формы можно было бы написать как
filter ((> 2) . length) ["a", "ab", "abc", "abcd"]
Или с список понимание, как
[str | str <- ["a", "ab", "abc", "abcd"], length str > 2]
Все три эквивалентны
filter (\x -> length x > 2) ["a","ab","abc", "abcd"]
Пойдите с чистым ответом bheklilr. –
Я лично не нахожу ответ читера bheklilr. Не грязнее. Просто другой. –
@ DanielWagner Я думаю, что все три ответа примерно одинаково «чисты» и действительны. Я хотел бы не дать лучшего ответа, просто несколько способов сделать то же самое в Haskell. – bheklilr
подсказка: 'filter'. – bheklilr
Да, спасибо. Я понял. – Xie
@NikitaVolkov Почему Се избавил его? Это допустимо, хотя и довольно просто. Другие могут столкнуться с этим вопросом и получить некоторое представление о том, как они начинают свои первые шаги в Haskell. – bheklilr