Ⅰ java中怎麼從大到小排序
自己寫排序方法,效率最高,因為sort只有一個這樣的排序,在C#裡面還有一個倒置的方法,在java裡面塌汪沒有,如果我們想使用sort,還需要自己寫一個倒置的演算法,這樣算下來就沒有自己寫這個排序演算法效率高了
呵呵,另外事實上演算法這個問題的效率高低,並不是絕對的~~
sort用的是一種優化的快速排序
排序演算法可能根據你的數據量的大小來判銀睜斷效率高低,我們常團搏仔說的演算法的高低,比如我們說A排序演算法比B排序演算法的效率高,這是在所有的情況下,也就是說在大數統計的情況下發生
並不見得,我對任意的一組排序A的效率都比B的效率高?明白不?
Ⅱ Java實現JSON多層遍歷
JSONObject jsonObject = new JSONObject(s);
然後用Iterator迭代器遍歷取值,建議用反射機制解析到封裝好的對象中
JSONObject jsonObject = new JSONObject(jsonString);
Iterator iterator = jsonObject.keys();while(iterator.hasNext()){
key = (String) iterator.next();
value = jsonObject.getString(key);
}
Ⅲ java中怎麼遍歷jsonarray
String json =
"[" +
" {" +
" \"resultcode\": \"200\"" +
" }," +
" {" +
" \"resultcode\": \"201\"" +
" }" +
"]";
JsonParser jp = new JsonParser();
JsonElement je = jp.parse(json);
JsonArray ja=je.getAsJsonArray();
for (JsonElement jsonElement : ja) {
System.out.println(jsonElement.getAsJsonObject().get("resultcode").getAsString());
}
Ⅳ 如何java解析json數組
工具/原料
安裝有eclipse軟體的電腦一台
方法/步驟
1
首先我們在eclipse中創建一個java工程,在java工程中創建一個HelloWorld的類,在這個java的入口程序中,我們來創建一個json字元串,並且列印出來,如下圖:
Ⅳ 求大神指導,兩個jsonarray結合的問題,用java實現
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class JsonArray {
public static void main(String[] args) {
//建立兩個數組,分別是ja和jb
JSONArray ja = new JSONArray();
JSONArray jb = new JSONArray();
//下面是向ja裡面灌數據
Map<String, Object> map_a1 = new HashMap<String,Object>();
map_a1.put("名稱","B2");
map_a1.put("a", "2");
JSONObject jsonObj_a1 = new JSONObject(map_a1);
ja.add(jsonObj_a1);
Map<String, Object> map_a2 = new HashMap<String,Object>();
map_a2.put("名稱","C1");
map_a2.put("a", "176");
JSONObject jsonObj_a2 = new JSONObject(map_a2);
ja.add(jsonObj_a2);
Map<String, Object> map_a3 = new HashMap<String,Object>();
map_a3.put("名稱","C2");
map_a3.put("a", "26");
JSONObject jsonObj_a3 = new JSONObject(map_a3);
ja.add(jsonObj_a3);
System.out.println(ja);
//向jb裡面灌數據
Map<String, Object> map_b1 = new HashMap<String,Object>();
map_b1.put("b", "2");
JSONObject jsonObj_b1 = new JSONObject(map_b1);
jb.add(jsonObj_b1);
Map<String, Object> map_b2 = new HashMap<String,Object>();
map_b2.put("b", "176");
JSONObject jsonObj_b2 = new JSONObject(map_b2);
jb.add(jsonObj_b2);
Map<String, Object> map_b3 = new HashMap<String,Object>();
map_b3.put("b", "26");
JSONObject jsonObj_b3 = new JSONObject(map_b3);
jb.add(jsonObj_b3);
System.out.println(jb);
//合並後的數組jc
JSONArray jc = new JSONArray();
for(int i=0; i<ja.size(); i++){
Map<String, Object> map_ca = ja.getJSONObject(i);//獲取ja數組中的map
Map<String, Object> map_cb = jb.getJSONObject(i);//獲取jb數組中的map
//遍歷剛剛獲取的jb數組中的map_cb,獲取map_cb的key,然後根據key拿到value,之後將其放入map_ca中,最後添加到jc
for(String key : map_cb.keySet()){
map_ca.put(key, map_cb.get(key));
}
jc.add(map_ca);
}
System.out.println(jc);
}
}
希望對你有用。
Ⅵ 如何對jsonarray進行排序
數組排序用Array.Sort()這個方法
Ⅶ java 怎麼將jsonarray轉換成list
jsonarray轉換成list代碼如下:
public class JsonTest {
/**
* @param args
*/
public static void main(String[] args) {
// 轉換方法1
JSONArray array = JSONArray.fromObject("[{'name':'hehe','age':22}]");
List<Person> list = JSONArray.toList(array, Person.class);// 過時方法
System.out.println(list.get(0).getName());
// 轉換方法2
List<?> list2 = JSONArray.toList(array, new Person(), new JsonConfig());//參數1為要轉換的JSONArray數據,參數2為要轉換的目標數據,即List盛裝的數據
Person person = (Person) list2.get(0);
System.out.println(person.getAge());
}
}
Ⅷ Java的json反序列化:Java數據類可以和json數據結構不一致嗎
由於時間關系我也沒有寫全,這里提供一個思路吧。代碼如下:
Account.java:
@Data
public class Account {
private int id;
private String name;
// @PowerfulAnnotation註解是我臆想的
@PowerfulAnnotation("token.id")
private String tokenId;
@PowerfulAnnotation("token.key")
private String key;
}
Ⅸ 如何通過Java代碼將JsonArray轉化為list集合
定義一個新的java對象,對象中的欄位對應JsonArray中的欄位,如果已經有這樣的對象,那麼就不用定義了。然後使用deviceList = (List<DeviceAddDyn>) jsonArray.toCollection(jsonArray, DeviceAddDyn.class);其中DeviceAddDyn是自己定義的類名,如果已有,可以直接替換類名即可。
Ⅹ 如何用Java拼接JSON方式遍歷整個樹形節點
//是類似這種嗎
//控制層使用JSONArrayjsonObject=JSONArray.fromObject();轉換
Map<String,Object>map=newHashMap<String,Object>();
map.put("id","1");
map.put("text","實驗外國語學校");
List<Map<String,Object>>fatherList=newArrayList<Map<String,Object>>();
List<Map<String,Object>>list=newArrayList<Map<String,Object>>();
for(Beanbean:list){
if("1".equals(list.getParent_level())){
Map<String,Object>map2=newHashMap<String,Object>();
map2.put("id",list.getId());
map2.put("text",list.getName());
list.add(map2);
}
}
map.put("children",list);