flex 有关数据类型强制转

flex 编辑页面里变量的强制类型转化时,竟然不能用 as

比如:在mxml里,

private var aa:String="89";

private var bb:Number=(Number)aa; 正确

private var aa:String="89";

private var bb:int=aa as int ; 不正确

估计这两种强制类型转化的方式 使用于不同的地方,不是通用的,

在网上找了一下 果然啊

在字符串转换为int类型必须使用 最好如下:

var a:int=int(str);

上面转换如果采用如下强制转换则

var a:int =str as int;

得到数据为0 为错误数据。

在项目中两个int相加结果超过一个int的范围时出现错误!

经过自己bug查找到错误原因是因为int数据类型范围太小奥!只好改为Number类型。结果才正确!晕死!

在数据类型方面

如果数据类型访问超过flex中int的方位最好使用Number,否则计算数据出现错误!

下面时Number数据类型的范围:

   Number.MIN_VALUE = 4.94065645841247e-324    Number.MAX_VALUE = 1.79769313486232e+308

int数据类型的范围:

int.MIN_VALUE = -2147483648 int.MAX_VALUE = 2147483647  

原文地址:https://www.cnblogs.com/regalys168/p/3577997.html