【问题标题】:The right way to print a collection with delimiter in SmallTalk - Squeak?在 SmallTalk 中打印带有分隔符的集合的正确方法 - 吱吱声?
【发布时间】:2014-11-09 14:46:14
【问题描述】:

我一直在尝试使用以下代码重新定义 printOn 方法:

coordinates do: [:elem | aStream print: elem] separatedBy: [aStream print: ' ,']

其中“坐标”代表集合的名称(OrderedCollection),但我希望在调用 Transcript show 时打印出来:

(2/2) ,(1/1) ,(3/3) ,(-4/4)

我得到了这个:

(2/2)','(1/1)','(3/3)','(-4/4)

我。 e 引号也被打印出来了。

我尝试过使用它,定义一个局部变量并使用它,等等。 没有任何效果。

【问题讨论】:

    标签: oop smalltalk squeak


    【解决方案1】:

    不要使用#print: 打印字符串。使用#nextPutAll: 是安全的(适用于所有集合)。 #print: 在流中写入一个字符串表示形式并用引号括住参数,这就是您在输出中得到引号的原因。

    【讨论】:

    • aStream
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    • 1970-01-01
    相关资源
    最近更新 更多