我有一个解析大文件的perl脚本。它有效,但速度很慢,我看到了一种我想要利用的模式,但我不知道如何编写它。perl - 使用mod替换多个if语句的算法
有一个部分,在那里我算一个数的ObjectID,并有返回值空间。最小号码为* objectIds为3,并以奇数增量增加,我的输出从3开始并以3的倍数增加。
所以我有这样
if($objectIds == 3)
{
$spaces = 3;
}
if($objectIds == 5)
{
$spaces = 6;
}
if($objectIds == 7)
{
$spaces = 9;
}
我看到的差由1模递增,即,30个语句链(3%3 = 0),(6%5 = 1),(9%7 = 2),但我不能为我的生活弄清楚如何优化这个。
'$ spaces = 3 *($ objectIds - 1)/ 2' – toolic 2014-12-04 18:00:53
我有大概1天的经验,所以我不确定。 – FriggenA 2014-12-04 18:07:25
@toolic tnx以备评论。 – 2014-12-04 18:09:31