Json에서 getString ()과 optString ()의 차이점
getString()
와 optString()
JSON 의 차이점은 무엇입니까 ?
Diego가 언급했듯이 여기에 질문을 게시하기 전에 문서 를 확인하는 것이 좋습니다 (이 링크는 이제 구식입니다-우리는 Wayback Machine이 있습니다! ).
차이점은 지정한 키가없는 경우 optString
빈 문자열 ( ""
) 을 반환 한다는 것 입니다. getString
반면에 JSONException
. 사용 getString
이 데이터가 누락하는 오류 인 경우, 또는 optString
확실하지 않은 경우가있을 것입니다 경우.
편집 : 문서의 전체 설명 :
키와 관련된 선택적 문자열을 가져옵니다. 그러한 키가 없으면 빈 문자열을 반환합니다. 값이 문자열이 아니고 null이 아니면 문자열로 변환됩니다.
피하고 NullPointerException
싶다면 더 잘 활용하십시오.optString()
JSON
언제든지 데이터를 가져 오는 경우 null
Null 조건을 구현하는 대신 특정 키 값에 대한 데이터 가있을 수 있습니다.이 최적화 된 방법을 사용하는 것이 좋습니다.optString("<keyname>")
public java.lang.String optString (int index) 인덱스와 연관된 선택적 문자열 값을 가져옵니다. 해당 인덱스에 값이 없으면 빈 문자열을 반환합니다. 값이 문자열이 아니고 null이 아니면 문자열로 변환됩니다. 매개 변수 : index-인덱스는 0과 length () 사이 여야합니다.-1 반환 값 : 문자열 값.
1) getString (문자열 이름) :- 이 메소드는 이름으로 매핑 된 문자열 값이있는 경우 반환하고 필요한 경우 강제하거나 이러한 매핑이없는 경우 JSONException을 throw 합니다.
2) optString (문자열 이름) :- 이 메소드는 이름으로 매핑 된 문자열 값을 반환합니다 (있는 경우). 필요한 경우 강제 변환하거나 그러한 매핑이없는 경우 빈 문자열 ( "")을 반환합니다.
optString ()은 NullPointerException을 극복하는 데 사용되며, 필요한 키가 json에 존재하지 않을 때 getString ()을 사용하는 동안 기본적으로 기본값으로 대체됩니다.
예를 들어 입력 Json을
{
"name":"abhi",
"country":"india"
}
이제 자바에서 실행할 때
String city = json.getString("city");
그것은 발생합니다 NullPointerException
.
사용하여 optString(String key, String default)
우리는 위의 문제를 극복 할 수 있습니다.
String city= json.optString("city","default");
System.out.println(city);
출력 : 기본값
참고 URL : https://stackoverflow.com/questions/13790726/the-difference-between-getstring-and-optstring-in-json
'Program Tip' 카테고리의 다른 글
ALTER 테이블-MySQL에 AUTOINCREMENT 추가 (0) | 2020.11.17 |
---|---|
Mocha로 Express 앱을 테스트하려면 어떻게하나요? (0) | 2020.11.17 |
Pandas 데이터 프레임의 열을 1 위로 이동 하시겠습니까? (0) | 2020.11.17 |
8 개의 논리적 참 / 거짓 값을 1 바이트 안에 저장합니까? (0) | 2020.11.17 |
GNU C 매크로 envSet (name)에서 (void) ""이름은 무엇을 의미합니까? (0) | 2020.11.17 |