flex中各个数据类型和java中的各个数据类型的对应关系

本文详细介绍了ActionScript3.0与Java之间的数据类型转换规则,并提供了具体示例,帮助开发者理解如何处理不同类型的对象在两种语言间的传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ActionScript3.0向Java转换时数据类型的对应关系:

ActionScript数据类型
Java数据类型
nullnull
Number
java.lang.Number
Boolean
java.lang.Number,boolean,java.lang.String
String
java.lang.String,java.lang.Boolean,boolean,java.lang.Character,char,java.lang.Number
Date
java.util.Date
XML Object
org.w3c.dom.Document

------------------------------------------------------------------------------------------------------------------------------------

Java向ActionScript 3.0转换时数据类型对应:

Java数据类型
ActionScript3.0数据类型
nullnull
java.lang.Number
Number
java.lang.Number,boolean
Boolean
java.lang.String,java.lang.Character char[]
String
java.util.Collection,java.lang.reflect.Array
ArrayCollectionArray
java.util.Map,java.util.Dictionary
Object
org.w3c.dom.DocumentXML Object
其他claess
Object

注意:

(1)JAVA里的LIST、ARRAYLIST对应到FLEX里可以用ArrayCollection来接收。

(2)eg:通过JAVA写一个连接ORACLE的方法,返回一个ARRAYLIST,该ARRAYLIST里放的一般是一个个的HASHMAP。如果通过RemoteObject(或其他方式)来调用该方法时,FLEX端接收到的肯定是个OBJECT,这个时候可以强制转换成ArrayCollection。然后通过遍历该ArrayCollection,来取得存每条数据的OBJECT(JAVA里的HASHMAP)。

(3)FLEX里没有MAP类,但只要你知道了JAVA里MAP的KEY,那么FLEX里就可以作为OBJECT的一个属性来访问。

测试:(关键代码)

(1)如果服务器端传过来的是List集合类型(包括List的子类):

[Bindable]
public static var list:ArrayCollection;

private function loadData(event:ResultEvent):void{
list = ArrayCollection(event.result);
}

<mx:DataGrid dataProvider="{list}" id="studentData">
<mx:columns>
<mx:DataGridColumn dataField="studentId" headerText="学号"/><!--后台属性字段 -->
<mx:DataGridColumn dataField="studentAge" headerText="年龄"/> <!--后台属性字段 -->
<mx:DataGridColumn dataField="studentBirthday" headerText="生日"/> <!--后台属性字段 -->
</mx:columns>
</mx:DataGrid>

(2)如果服务器端传过来的是Map集合类型 (包括Map的子类):

[Bindable]
public var hm:Object;

public function hashMap(event:ResultEvent):void{
hm = event.result as Object;
}


<mx:TextInput x="10" y="244" text="{hm.name}"/><!--name,age,id为HashMap里面的key-->
<mx:TextInput x="10" y="306" text="{hm.age}"/>
<mx:TextInput x="10" y="361" text="{hm.id}"/>

(3)如果服务器端传过来的是Stirng[]类型的数组:

[Bindable]
public var arr:Array;

public function array(event:ResultEvent):void{
arr = event.result as Array;

for(var i:int = 0 ; i < arr.length; i++){
//得到的值顺序颠倒
Alert.show(arr[i]);
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值