
C#で配列が空かどうかを判定するにはどうしたらようでしょうか?
VB.NETではIsNothingで出来るのですが、C#の方法が分かりません。
-- C# ---
int[] a={0,1,2};
int[] b;
//bが空なのを判定したい
--VB.NET---
Dim a() As Int16 = {0, 1, 2}
Dim b() As Int16
MsgBox(IsNothing(a)) 'Falseを返す
MsgBox(IsNothing(b)) 'Trueを返す
----
VS.NET2003/Windows2000Pro
No.1ベストアンサー
- 回答日時:
System.ArrayクラスのLengthの値で判断できると思います。
手元にコンパイラが無いのでテストはできませんが、
以下のコードは、エラーになるんじゃないでしょうか。
初期化されていてない変数へのアクセスとかで・・・
int[] a={0,1,2};
int[] b;
if(b.length == 0){// この行でコンパイルエラー
// 配列が空
}
=====
nullで初期化するとif分で例外が発生します。
int[] a={0,1,2};
int[] b = null;
if(b.length == 0){// この行で例外が発生
// 配列が空
}
=====
int[] a={0,1,2};
int[] b = {};
if(b.length == 0){// 真となる
// 配列が空
}
回答ありがとうございます。
>nullで初期化すると
実践では動的配列にWebサービスのメソッドを代入するのだけど、データがない場合の判定をしたかったのです。
なるほど、nullが代入されるのですね。
if (b == NULL)
で行けました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数から配列を返すには?
-
C言語において、 配列要素をひ...
-
配列の要素数に変数を入れたい...
-
配列のアドレス部
-
10人分の生徒の英語の点数{32,3...
-
IPアドレスを配列に代入する方法。
-
define で 配列
-
コンボボックスでデフォルト値...
-
callocで二次元配列を作成する...
-
ポインタを使って構造体の配列...
-
C言語 ビットフィールドについて
-
C++DLLからC#へのコールバック...
-
配列を使わずに、変数名を動的...
-
Integer変数をカラにしたいので...
-
構造体のデータを丸ごとコピー...
-
【速いブラインドタッチ】手を...
-
char*を初期化したいのですが
-
DelphiでCreateProcessがうまく...
-
C言語のポインタに直接アドレス...
-
Functionの戻り値を2次元配列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
C言語において、 配列要素をひ...
-
c言語
-
C言語 ファイルの指定された行...
-
define で 配列
-
C#で構造体の配列を持った構造...
-
C言語の課題が出たのですが自力...
-
char型配列をint型に代入するには
-
C#で配列が空かを判定するには?
-
MFCのCArrayを使った二次元配列
-
コンボボックスでデフォルト値...
-
MFC - ダイアログボックスのPic...
-
c言語 構造体
-
2番目の最大値を求める
-
C言語から質問です。
-
Cのエラー
-
プログラミングに関する問題が...
-
C言語の2次元配列 容量が大き...
-
Visual C++を 用いたテキストフ...
おすすめ情報