当前位置:  开发笔记 > 编程语言 > 正文

如何在Smalltalk OrderedCollection中打印出来时在元素之间添加空格?

如何解决《如何在SmalltalkOrderedCollection中打印出来时在元素之间添加空格?》经验,为你挑选了1个好方法。

我已经创建了一个OrderedCollection列表,现在我想通过使用Transcript将其打印出来,如下所示:

  range do:[:each|Transcript show: each].

输出是35791113,但我需要3 5 7 9 11 13,所以我需要元素之间的空格.我也尝试过..

   Transcript show: range.

但是我没有OrderedCollection(3 5 7 9 11 13),而是只有列表元素,没有OrderedCollection.怎么做到这一点?



1> Peter Uhnak..:

Pharo你可以做到

Transcript show: (range joinUsing: ' ')

或相反的

Transcript show: (' ' join: range)

即使元素是数字,这也会起作用.

GNU Smalltalk中,您需要更加明确

Transcript show: ((range collect: [ :each | each asString ]) join: ' ')

最后,您可以简单地扩展您已尝试过的内容 do:separatedBy:

range
    do: [ :each | Transcript show: each ]
    separatedBy: [ Transcript show: ' ' ]

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有