您的位置:首页 > 编程语言 > Java开发

转,flex处理java返回的容器类型

2009-12-18 17:36 253 查看
当然,这个话题是建立在使用BlazeDS处理RemoteObject的情况下的。

1.List和Set

当Java返回List和Set的时候,Flex可以用ArrayCollection进行处理。

java代码

List list =
new
ArrayList();

list.add(new
Users(
"abc"
,
"123"
));

list.add(new
Users(
"efg"
,
"123"
));

list.add(new
Users(
"hij"
,
"456"
));

return
list;

java代码

Set set =
new
HashSet();

set.add(new
Users(
"abc"
,
"123"
));

set.add(new
Users(
"efg"
,
"123"
));

set.add(new
Users(
"hij"
,
"456"
));

return
set;

flex代码

private function resultHandler(event:ResultEvent):void {

var array:ArrayCollection = event.result as ArrayCollection;

var str:String = ""
;

for(var i:int = 0
; i < array.length; i++) {

var anUser:Users = array.getItemAt(i) as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

}

resultMessage.text = str;

}

2.Map

Map在actionscript中是视为Object的,只需知道Map的key,就可以用".key"来得到Map的value了。

java代码

Map map =
new
HashMap();

map.put("one"
, anUser);

map.put("two"
, anUser);

map.put("three"
,
new
Users(
"abc"
,
"123"
));

map.put("four"
,
new
Users(
"efg"
,
"123"
));

map.put("five"
,
new
Users(
"hij"
,
"456"
));

return
map;

flex代码

private function resultHandler(event:ResultEvent):void {

var str:String = ""
;

var anUser:Users = event.result.one as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

anUser = event.result.two as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

anUser = event.result.three as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

anUser = event.result.four as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

anUser = event.result.five as Users;

str += anUser.userName + ":"
+ anUser.passWord +
"/n"
;

resultMessage.text = str;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐