net.sf.json.JSONArray একটি অর্ডারড সিকোয়েন্স অফ ভ্যালু। এর এক্সটার্নাল টেক্সট ফর্ম হল স্কোয়ার ব্র্যাকেটে লিপटा কমা-সেপারেটেড স্ট্রিং এবং ইন্টার্নাল ফর্ম হল get() এবং opt() মেথড বিশিষ্ট অবজেক্ট ইনডেক্স বেসড অ্যাক্সেসের জন্য, এবং element() মেথড ভ্যালু অ্যাড বা রিপ্লেস করার জন্য। ভ্যালুগুলো হতে পারে: Boolean, JSONArray, JSONObject, Number, String এবং JSONNull অবজেক্ট।
উদাহরণ
import java.util.*;
import net.sf.json.JSONArray;
import net.sf.json.JSONSerializer;
public class ConvertCollectionToJsonArrayTest {
public static void main(String[] args) {
List<String> strList = Arrays.asList("India", "Australia", "England", "South Africa");
JSONArray jsonArray = (JSONArray)JSONSerializer.toJSON(strList);
System.out.println(jsonArray.toString(3)); // প্রিটি প্রিন্ট JSON
List<Object> objList = Arrays.asList("List Data", 50, 99, 50.65, true, new String[]{"X", "Y", "Z"});
jsonArray = (JSONArray)JSONSerializer.toJSON(objList);
System.out.println(jsonArray.toString(3));
}
}
আউটপুট
[
"India",
"Australia",
"England",
"South Africa"
]
[
"List Data",
50,
99,
50.65,
true,
[
"X",
"Y",
"Z"
]
]
মূল নোট
- JSONSerializer.toJSON() যেকোনো কালেকশন (List, Set, Queue) হ্যান্ডেল করতে পারে
- এলিমেন্ট টাইপ মিক্সড হলে JSONArray মিক্সড টাইপ ধারণ করে
- নেস্টেড কালেকশন/অ্যারে অটোমেটিকালি নেস্টেড JSONArray-এ কনভার্ট হয়
আধুনিক বিকল্প (Jackson/Gson)
// Jackson
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(strList);
// Gson
Gson gson = new Gson();
String json = gson.toJson(strList);