perl – 只有在存在的情况下才能从hash中分配值的最简洁方法?

perl – 只有在存在的情况下才能从hash中分配值的最简洁方法?,第1张

概述我发现自己经常编写这样的代码: if ($optionalParamsRef->{verbosity}) { $settingsHash{verbosity} = $optionalParamsRef->{verbosity};} 但是,重复$optionalParamsRef-> {verbosity}两次似乎非常冗长.有更短的方式吗? 编辑:是的,我意识到这是检查真/假而不是’存在’ 我发现自己经常编写这样的代码:

if ($optionalParamsRef->{verbosity}) {    $settingsHash{verbosity} = $optionalParamsRef->{verbosity};}

但是,重复$optionalParamsRef-> {verbosity}两次似乎非常冗长.有更短的方式吗?

编辑:是的,我意识到这是检查真/假而不是’存在’.我正在寻找的是与此相当的简洁功能.

解决方法 请注意,您检查$optionalParamsRef-> {verbosity}是否为true,不存在.

可能的方法:

foreach my $k (qw/verbosity param1 param2 param3/) { #Enumerate keys here     $settingsHash{$k} = $optionalParamsRef->{$k} if exists($optionalParamsRef->{$k});}
总结

以上是内存溢出为你收集整理的perl – 只有在存在的情况下才能从hash中分配值的最简洁方法?全部内容,希望文章能够帮你解决perl – 只有在存在的情况下才能从hash中分配值的最简洁方法?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1260566.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存