8

「adminNo」という名前の入力フィールドがあるとします。getParameter( "adminNo")メソッドを呼び出すとnull値が返される場合と、空の文字列""が返される場合の違いは何ですか。

4

3 に答える 3

4

の呼び出しは、呼び出されたパラメーターが存在するが値がない場合はgetParameter("adminNo")空を返し、そのようなパラメーターがなかった場合は空を返します。StringadminNonull

于 2012-10-24T13:21:45.677 に答える
2

JavaDocから:

リクエストパラメータの値を、として返すStringnull、パラメータが存在しない場合に返します。

これが実際に意味することは次のとおりです。

  • 戻り値がnullHTMLフォームの場合、パラメータ名を含む入力がありませんでした
  • 値が空Stringの場合、HTMLフォームにはパラメーター名を含む入力がありましたが、値は設定されていませんでした。
于 2012-10-24T13:25:41.113 に答える
0

メソッドが空の文字列を返す場合は、オブジェクト(その参照)を返し、それを操作できます。nullを返す場合は、操作するものがないため、操作できません。

String s = "";
s.isEmpty(); // returns true

String s = null;
s.isEmpty(); // throws null pointer exception.

より堅牢なコードが必要な場合は、空の文字列を返す方が適切ですが、nullを返す場合は、nullポインターを使用すると、ロジック内のある種のエラーを見つけるのに役立ちます。空の文字列での作業は適切ではない可能性があります。null値は、チェックが不要な場所を見つけるのに役立ちます。

于 2012-10-24T13:25:07.053 に答える