- PR -

if文の条件式(配列)

投稿者投稿内容
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2008-10-24 14:27
その箱が、何を入れるための箱なのか、混乱しているようですが。

argv[]とargv[0]が、それぞれどのように違うのか、
きちんと説明できるよう、勉強してみましょう。
あすか
ぬし
会議室デビュー日: 2006/07/12
投稿数: 309
投稿日時: 2008-10-27 09:34
argv[0]
てのは
配列argvの1番目の箱(要素)です

argv.length == 0
は配列argvに箱(要素)が0個という状態です

さうす
会議室デビュー日: 2008/10/16
投稿数: 8
投稿日時: 2008-10-27 10:14
皆様、返信ありがとうございました。

Edossonさんが仰る配列の説明は、あすかさんが仰っている通りだと認識しています。
言葉足らずで申し訳なかったと思っています。
もっとうまく説明できるように精進していこうと思います。

以下、自分用の覚書。
if文の条件式で、条件式自体がエラー(例:argv[0] == null)になる場合、
そこで判定が終わりそれ以上ステップは進まずエラーになって落ちる。

ぴあちゃん
ぬし
会議室デビュー日: 2008/02/07
投稿数: 287
投稿日時: 2008-10-27 16:02
>条件式自体がエラー
条件式の評価前に落ちていますよ。

argv[0]
この時点で null 参照エラーです。

argv[0] == null の "== null" は評価されていません。


mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2008-10-27 16:21
引用:

ぴあちゃんさんの書き込み (2008-10-27 16:02) より:
argv[0]
この時点で null 参照エラーです。


いえ、配列インデックスの範囲外エラーです。


ところで、なにか違和感を覚えると思ったらJavaでは通常、「args」なんですよね。
一瞬Cを思い出して混乱しましたが。

[ メッセージ編集済み 編集者: mio 編集日時 2008-10-27 16:23 ]
rain
ぬし
会議室デビュー日: 2006/10/19
投稿数: 549
投稿日時: 2008-10-27 16:24
別の話になりますが、args[0] == null の結果が true になる場合ってあるのでしょうか?
不要な条件ではないかと思ったりするのですが。

-----
書いた後になって、args(元質問だと argv か)がコマンドライン引数かどうか不明、という点に気がつくも時既に遅しorz

[ メッセージ編集済み 編集者: rain 編集日時 2008-10-27 17:59 ]
King
ぬし
会議室デビュー日: 2008/06/20
投稿数: 284
投稿日時: 2008-10-27 16:26
argv[0] が null かどうか判定する以前に
argv[0] が無いからエラーですよ。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2008-10-27 16:41
>args[0] == null の結果が true
mainの引数では、ありえないですね。

スキルアップ/キャリアアップ(JOB@IT)