猿问

请教一下Perl如何数组转字符串!急!

本人初学perl,请教如何将一个数组多值转成一个字符串的多个值。
以@a = ('P','e','r','l')为例,想要得到$b = ['P','e','r','l']值。
应该就是把
@a 
$VAR1 = 'P';
$VAR2 = 'e';
$VAR3 = 'r';
$VAR4 = 'l';
变成
$b
$VAR1 = [
'P',
'e',
'r',
'l'
];

顺便问下,倒过来的话,数组逐行push去字符串push($b,shift(@a)) , 这里push怎么用的?
多谢!

陪伴而非守候
浏览 426回答 3
3回答

湖上湖

你就用push呗,push是每次往列表的右边加上一个元素;你说的逐行去除那是pop.列表变量本来就可以转化为content变量,直接转就是了。@a = ('P','e','r','l');my ($b)=[0,1,2,3];

慕雪6442864

$b = [@a];push @$b, shift @a while @a;顺便说两句:这不叫字符串多值, 这叫  Array Reference (数组引用, 引用数组 ... ) Perl 不会将 string 当成 char array 的. perl 没有 char 这种变量形态如可以, 请避用 $a $b (或 @a @b ) , 这两个变量尽量留给 sort {} 用.

白猪掌柜的

@a = ('P','e','r','l'); $t=join "",@a; print $t;字符串,直接取就是了。
随时随地看视频慕课网APP
我要回答