3

このリンク( http://www.jsoftware.com/help/user/hashbang.htm)に続くコマンドライン入力を読み込もうとしています。

0".>,.2}.ARGV

2}.ARGVが「jconsole」とプログラム名の部分を削除していることがわかります。

0"。文字列を数字に変換します

なぜ必要なのですか、。

これは、万が一の場合に備えて、入力パラメータに不必要に余分なランクを追加するようです。

'a b c d' =: 0".>,.2}.ARGV
 $a
 1

なぜだけではないのですか

'a b c d' =: 0".> 2}.ARGV
$a

別の注意事項:

'a' =: 0".> 2}.ARGV
$a
1

したがって、渡される引数が1つしかない場合'a'は、入力リストの1つの要素ではなく、ランク1のリストになります。

4

1 に答える 1

2

違いは、 がない,.と、結果は常に "number" 化された ( ".) 項目のリスト (引数ごとに 1 つ) とならないことです。0".各引数に個別に適用されるラベリング保証。

たとえば、ARGV が文字のリストである場合:

]in =: 2 }. ARGV
┌─┬─┬─┬─┐
│1│2│3│4│
└─┴─┴─┴─┘
> ,. in
1
2
3
4

しかし

> in
1234

それで

0". > ,. in
1 2 3 4

しかし

0". > in
1234

0".各引数に個別に適用する他の方法には、(0". >)"0 inおよび があり> 0". &.> inます。その3つのうち、ラヴェルを使ったものが最も効率的です。

于 2013-01-05T21:16:57.777 に答える