オンラインで J を使用する方法を学んでおり、この言語を使用して古い Java の割り当てをやり直しています。オペランドを取らない動詞を作成する方法、または結果を返す方法を知りたいです。その理由は次のとおりです。動詞を入力できるようにしたいと思いgo
ます。一連のコードを単独で実行し、実行時に生成されるデータを保存する動詞を呼び出してみましょう。ただし、何も表示されません。これの全体的な目標は、少なくともvoid returnChange()
メソッドを必要とする自動販売機クラスとインターフェースを最終的に再現できるようにすることです。
2 に答える
4
J 動詞の呼び出しは常に、少なくとも正しい引数で行われます。右の引数を完全に無視する単項動詞に何かを送ります ( 0
or など''
)。
関数は常に何かを返しますが、返されるデータを使用i.0
または''
最小化します。
go =: 3 : 0
NB. do stuff
i. 0
)
go ''
于 2010-07-20T17:22:20.660 に答える
1
MPelletier は、J 動詞が結果を生成するために常に正しい引数を必要とし、実行時に必ず結果を生成するという点で正しいです。状況は、副詞と接続詞についても同様です。J には、「void を返す」メソッドに似たものはありません。
MPelletier が提供する例では、キーワード「return」が使用されています。そのコンテキストでは、キーワードは効果がありません。そのプログラムの修正版がここで提供されています。
go =: 3 : 0
NB. do stuff
i. 0 0
)
このプログラムと MPelletier によって投稿されたプログラムとの目に見える違いは、コンソールで実行された場合、次のプロンプトの前に空白行が生成されないことです。(その形状から位置 _2 にゼロがある結果には、この効果があります。)
于 2010-08-26T17:43:29.023 に答える