我建立陣列的散列的數組增加值數組,如果條件fullfilled
my @array = (
{label => 'first hash'},
{label => 'second hash',
innerarray => [
{label => 'first inner hash'},
{label => 'second inner hash'},
]
},
);
有沒有辦法只能添加第二個內部哈希只有在條件fullfilled? 事情是這樣的:
my @array = (
{label => 'first hash'},
{label => 'second hash',
innerarray => [
{label => 'first inner hash'},
{label => 'second inner hash'} if 1==1,
]
},
);
我試着使用推重寫我的代碼:
my @innerarray =();
push @innerarray, {label => 'first inner hash'};
push @innerarray, {label => 'second inner hash'} if 1==1;
my @array = (
{label => 'first hash'},
{label => 'second hash',
innerarray => \@innerarray
},
);
但它變得非常難以辨認,因爲我有在使用前預先定義所有內部陣列,這在某些情況下,在使用之上有幾百行代碼。
是否有任何方式直接添加if條件插入數組元素?
謝謝,工作究竟如何我 – Pit
「三元運算符」不是它的名字,它只是描述了它需要多少個操作數。條件運算符不是Perl唯一的三元運算符(例如'dbmopen')。 – ikegami