首页 > 解决方案 > 这个空列表的第一个元素如何为 0?

问题描述

考虑:

   {. ''          NB. makes sense...

   </. ''         NB. still makes sense....

   {. </. ''      NB. umm... where did that zero come from?
0
   '' -: </. ''   NB. and why is it behaving differently from line 1?
1                 NB. which is apparently identical to?

是什么解释了这些看似矛盾的事情?

标签: j

解决方案


那个零是从哪里来的?

每个NuVoc 页面{.头部):

如果y没有项目,则{. y生成一个填充原子项目。

   {.0$0
0

为什么它的行为不同

-:1仅当其参数的形状和内容相同时才返回布尔值。</.''是一个没有元素和形状的空列表0(如''),而{.''是一个原子:($它的形状)给出一个空列表:

   ${.''

   $${.''
0

u:说它是一个空格字符(ASCII 32):

   3 u:{.''
32

推荐阅读