mirror of
https://github.com/ethauvin/JSON-java.git
synced 2025-06-17 07:50:52 -07:00
Updates javadoc to match actual exceptions thrown.
Also optimizes some boxing statements and returns.
This commit is contained in:
parent
d402a99fd8
commit
b63b976acb
2 changed files with 124 additions and 72 deletions
116
JSONArray.java
116
JSONArray.java
|
@ -36,6 +36,7 @@ import java.util.Iterator;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/**
|
||||
* A JSONArray is an ordered sequence of values. Its external text form is a
|
||||
* string wrapped in square brackets with commas separating the values. The
|
||||
|
@ -182,7 +183,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* Construct a JSONArray from an array
|
||||
*
|
||||
* @throws JSONException
|
||||
* If not an array.
|
||||
* If not an array or if an array value is non-finite number.
|
||||
*/
|
||||
public JSONArray(Object array) throws JSONException {
|
||||
this();
|
||||
|
@ -465,11 +466,11 @@ public class JSONArray implements Iterable<Object> {
|
|||
}
|
||||
|
||||
/**
|
||||
* Determine if the value is null.
|
||||
* Determine if the value is <code>null</code>.
|
||||
*
|
||||
* @param index
|
||||
* The index must be between 0 and length() - 1.
|
||||
* @return true if the value at the index is null, or if there is no value.
|
||||
* @return true if the value at the index is <code>null</code>, or if there is no value.
|
||||
*/
|
||||
public boolean isNull(int index) {
|
||||
return JSONObject.NULL.equals(this.opt(index));
|
||||
|
@ -953,8 +954,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @return this.
|
||||
*/
|
||||
public JSONArray put(boolean value) {
|
||||
this.put(value ? Boolean.TRUE : Boolean.FALSE);
|
||||
return this;
|
||||
return this.put(value ? Boolean.TRUE : Boolean.FALSE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -964,10 +964,11 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @param value
|
||||
* A Collection value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If the value is non-finite number.
|
||||
*/
|
||||
public JSONArray put(Collection<?> value) {
|
||||
this.put(new JSONArray(value));
|
||||
return this;
|
||||
return this.put(new JSONArray(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -975,15 +976,25 @@ public class JSONArray implements Iterable<Object> {
|
|||
*
|
||||
* @param value
|
||||
* A double value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* if the value is not finite.
|
||||
* @return this.
|
||||
*/
|
||||
public JSONArray put(double value) throws JSONException {
|
||||
Double d = new Double(value);
|
||||
JSONObject.testValidity(d);
|
||||
this.put(d);
|
||||
return this;
|
||||
return this.put(Double.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
* Append a float value. This increases the array's length by one.
|
||||
*
|
||||
* @param value
|
||||
* A float value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* if the value is not finite.
|
||||
*/
|
||||
public JSONArray put(float value) throws JSONException {
|
||||
return this.put(Float.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -994,8 +1005,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @return this.
|
||||
*/
|
||||
public JSONArray put(int value) {
|
||||
this.put(new Integer(value));
|
||||
return this;
|
||||
return this.put(Integer.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1006,8 +1016,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @return this.
|
||||
*/
|
||||
public JSONArray put(long value) {
|
||||
this.put(new Long(value));
|
||||
return this;
|
||||
return this.put(Long.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1017,10 +1026,13 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @param value
|
||||
* A Map value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If a value in the map is non-finite number.
|
||||
* @throws NullPointerException
|
||||
* If a key in the map is <code>null</code>
|
||||
*/
|
||||
public JSONArray put(Map<?, ?> value) {
|
||||
this.put(new JSONObject(value));
|
||||
return this;
|
||||
return this.put(new JSONObject(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1031,8 +1043,11 @@ public class JSONArray implements Iterable<Object> {
|
|||
* Integer, JSONArray, JSONObject, Long, or String, or the
|
||||
* JSONObject.NULL object.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If the value is non-finite number.
|
||||
*/
|
||||
public JSONArray put(Object value) {
|
||||
JSONObject.testValidity(value);
|
||||
this.myArrayList.add(value);
|
||||
return this;
|
||||
}
|
||||
|
@ -1051,8 +1066,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* If the index is negative.
|
||||
*/
|
||||
public JSONArray put(int index, boolean value) throws JSONException {
|
||||
this.put(index, value ? Boolean.TRUE : Boolean.FALSE);
|
||||
return this;
|
||||
return this.put(index, value ? Boolean.TRUE : Boolean.FALSE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1065,11 +1079,10 @@ public class JSONArray implements Iterable<Object> {
|
|||
* A Collection value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If the index is negative or if the value is not finite.
|
||||
* If the index is negative or if the value is non-finite.
|
||||
*/
|
||||
public JSONArray put(int index, Collection<?> value) throws JSONException {
|
||||
this.put(index, new JSONArray(value));
|
||||
return this;
|
||||
return this.put(index, new JSONArray(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1083,11 +1096,27 @@ public class JSONArray implements Iterable<Object> {
|
|||
* A double value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If the index is negative or if the value is not finite.
|
||||
* If the index is negative or if the value is non-finite.
|
||||
*/
|
||||
public JSONArray put(int index, double value) throws JSONException {
|
||||
this.put(index, new Double(value));
|
||||
return this;
|
||||
return this.put(index, Double.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
* Put or replace a float value. If the index is greater than the length of
|
||||
* the JSONArray, then null elements will be added as necessary to pad it
|
||||
* out.
|
||||
*
|
||||
* @param index
|
||||
* The subscript.
|
||||
* @param value
|
||||
* A float value.
|
||||
* @return this.
|
||||
* @throws JSONException
|
||||
* If the index is negative or if the value is non-finite.
|
||||
*/
|
||||
public JSONArray put(int index, float value) throws JSONException {
|
||||
return this.put(index, Float.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1104,8 +1133,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* If the index is negative.
|
||||
*/
|
||||
public JSONArray put(int index, int value) throws JSONException {
|
||||
this.put(index, new Integer(value));
|
||||
return this;
|
||||
return this.put(index, Integer.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1122,8 +1150,7 @@ public class JSONArray implements Iterable<Object> {
|
|||
* If the index is negative.
|
||||
*/
|
||||
public JSONArray put(int index, long value) throws JSONException {
|
||||
this.put(index, new Long(value));
|
||||
return this;
|
||||
return this.put(index, Long.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1138,6 +1165,8 @@ public class JSONArray implements Iterable<Object> {
|
|||
* @throws JSONException
|
||||
* If the index is negative or if the the value is an invalid
|
||||
* number.
|
||||
* @throws NullPointerException
|
||||
* If a key in the map is <code>null</code>
|
||||
*/
|
||||
public JSONArray put(int index, Map<?, ?> value) throws JSONException {
|
||||
this.put(index, new JSONObject(value));
|
||||
|
@ -1161,25 +1190,26 @@ public class JSONArray implements Iterable<Object> {
|
|||
* number.
|
||||
*/
|
||||
public JSONArray put(int index, Object value) throws JSONException {
|
||||
JSONObject.testValidity(value);
|
||||
if (index < 0) {
|
||||
throw new JSONException("JSONArray[" + index + "] not found.");
|
||||
}
|
||||
if (index < this.length()) {
|
||||
JSONObject.testValidity(value);
|
||||
this.myArrayList.set(index, value);
|
||||
} else if(index == this.length()){
|
||||
// simple append
|
||||
this.put(value);
|
||||
} else {
|
||||
// if we are inserting past the length, we want to grow the array all at once
|
||||
// instead of incrementally.
|
||||
this.myArrayList.ensureCapacity(index + 1);
|
||||
while (index != this.length()) {
|
||||
this.put(JSONObject.NULL);
|
||||
}
|
||||
this.put(value);
|
||||
return this;
|
||||
}
|
||||
return this;
|
||||
if(index == this.length()){
|
||||
// simple append
|
||||
return this.put(value);
|
||||
}
|
||||
// if we are inserting past the length, we want to grow the array all at once
|
||||
// instead of incrementally.
|
||||
this.myArrayList.ensureCapacity(index + 1);
|
||||
while (index != this.length()) {
|
||||
// we don't need to test validity of NULL objects
|
||||
this.myArrayList.add(JSONObject.NULL);
|
||||
}
|
||||
return this.put(value);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue