json对象的值为数组,怎么获取数组某项的值(注意不是json数组)

json对象的值为数组,怎么获取数组某项的值(注意不是json数组),第1张

package com;

import javautilList;

import comKensouPerson;

import comalibabafastjsonJSON;

public class Yuma

{

public static void main(String[] args)

{

String result =

        "{\"data1\":[{\"name\":\"aa\",\"age\":\"12\"},{\"name\":\"bb\",\"age\":\"13\"}],\"data2\":{\"nowpage\":1,\"pagesize\":2}}";

Kensou ps = JSONparseObject(result, Kensouclass);

Systemoutprintln(ps);

List<Person> data1 = psgetData1();

for(int i = 0; i < data1size(); i++)

{

Person p = data1get(i);

Systemoutprintln(p);

}

Person data2 = psgetData2();

Systemoutprintln(data2);

}

}

/

  模型对象不需要构造函数, 至少只需要setter方法<br>

  Person类可以是内嵌类,也可以是外部类 <br>

  Kensou类只能是外部类<br>

  集合类可以是数组或者List类型<br>

  <p>

  使用的是<font color="red">fastjson-1136jar</font>

 /

class Kensou

{

private List<Person> data1;

private Person data2;

public List<Person> getData1()

{

return data1;

}

public void setData1(List<Person> data1)

{

thisdata1 = data1;

}

public Person getData2()

{

return data2;

}

public void setData2(Person data2)

{

thisdata2 = data2;

}

@Override

public String toString()

{

return Stringformat("Kensou [data1=%s, data2=%s]", data1, data2);

}

class Person

{

private String name;

private int age;

private int nowpage;

private int pagesize;

public String getName()

{

return name;

}

public void setName(String name)

{

thisname = name;

}

public int getAge()

{

return age;

}

public void setAge(int age)

{

thisage = age;

}

public int getNowpage()

{

return nowpage;

}

public void setNowpage(int nowpage)

{

thisnowpage = nowpage;

}

public int getPagesize()

{

return pagesize;

}

public void setPagesize(int pagesize)

{

thispagesize = pagesize;

}

@Override

public String toString()

{

return Stringformat("Person [name=%s, age=%s, nowpage=%s, pagesize=%s]", name, age, nowpage, pagesize);

}

}

}

输入:

[

{ type: "a", value: 1 },

{ type: "b", value: 2 },

{ type: "a", value: 3 },

{ type: "b", value: 9 }

]

目标:

[

{ type: "a", value: 4 },

{ type: "b", value: 11 }

]

用以下代码,a是要找重复数据的List,最后得到c,里面都是a的重复数据,只出现一次的已经过滤掉了。

如果c里面的数据要求不重复,把ArrayList换成HashSet就行了。

List a = new ArrayList();

aadd("123");

aadd("123");

aadd("123");

aadd("123");

aadd("456");

aadd("789");

aadd("123");

Set b = new HashSet();

ArrayList c = new ArrayList();

for (int i = 0; i < asize(); i++) {

Object x = aget(i);

if (bcontains(x)) {

cadd(x);

}

badd(x);

}

list = [ { a:1, b:2 }, { a:3, b:4 }, { a:5, b:6 } ]

现在我拿到数组中某个对象的a值为5,需在找到b的值,也就是6,该怎么做?a的值永远不会重复,但是b可能会重复

listfind(item => itema === 5)b

解析:listfind(item => itema === 5) 改句执行完可以找到a=5所在的对象,然后通过b 即可找到同个对象中b对应的值

for(int i=0;i<listlength;i++){

var nop = list[i];

if(nopid==3){

alert(你想要的)

}

}

以上就是关于json对象的值为数组,怎么获取数组某项的值(注意不是json数组)全部的内容,包括:json对象的值为数组,怎么获取数组某项的值(注意不是json数组)、从对象数组中取出某个属性相同的对象、如何取出数组中相同的对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9706186.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存