如何在数组中找到元素的索引?
例如,给定
my @weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
Run Code Online (Sandbox Code Playgroud)
我怎么能找到索引'Thursday'?
我最初的解决方案
@weekdays.kv.reverse.hash.{'Thursday'} # 3
Run Code Online (Sandbox Code Playgroud)
然后JFerrero使用antipairs发布了他的改进解决方案:
@weekdays.antipairs.hash.{'Thursday'} # 3
Run Code Online (Sandbox Code Playgroud)
@weekdays.first('Thursday', :k) # 3
Run Code Online (Sandbox Code Playgroud)
您可以使用first(或者grep,如果您想了解所有匹配项,而不仅仅是第一个) with:k返回键(对于列表始终是整数索引)而不是值:
say @weekdays.first('Tuesday', :k); # 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
204 次 |
| 最近记录: |