首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不描述每个元素的格式的情况下打印数组?

如何在不描述每个元素的格式的情况下打印数组?
EN

Stack Overflow用户
提问于 2013-08-27 04:49:48
回答 2查看 8.2K关注 0票数 6

我想打印几个数组,输出元素的字段宽度为3,我想我可以使用printf,但是如果我使用printf,那么我需要编写数组的所有元素的格式,但是数组很大。

例如

代码语言:javascript
复制
@array = (1,10,100,30);
printf ("%3d %3d %3d %3d\n",$array[0],$array[1],$array[2],$array[3]);

我知道我可以使用循环来打印一个元素,直到数组循环通过为止,但我认为这不是一个好主意。

有没有办法让我只描述一次元素的格式,然后自动应用到整个数组中呢?

像这样吗?

代码语言:javascript
复制
printf ("%3d\n",@array);

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-27 05:00:59

以下是两种方法:

  1. 使用循环 打印"%3d ",$_用于@数组;打印"\n";
  2. 使用x运算符生成可变长度模板 打印"%3d“x@数组。“n”,@array;
票数 13
EN

Stack Overflow用户

发布于 2013-08-27 05:06:04

试试这个调料:

代码语言:javascript
复制
print( map( {sprintf("%3d\n", $_)} @array));
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18457175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档