[英]Representing a null java.lang.Double in CORBA?
假设我有一个空的java.lang.Double(对象)要通过CORBA传递。 CORBA不接受双基本类型的null,因此我必须将其映射到另一个双(基本)值。
我应该使用的最佳价值是什么?
谢谢!
这是一个很难回答的问题,尤其是如果所有双精度值对于此变量将表示的内容均有效时。
最好的选择是选择Double.MIN_VALUE或一些很可能不会使用的值。
但是,您需要确保此值在与CORBA交互的其他语言/硬件中也可以表示。
CORBA值类型支持null; 看到CORBA 3.1规范部分的第9章1 - http://www.omg.org/spec/CORBA/3.1/Interfaces/PDF/
我认为以下IDL语法将定义一个可以表示double
或null
的装箱值类型。
valuetype Double double;
如果您不能更改IDL并且当前的IDL不允许您发送null
值,那么您应该将空值视为错误,而不要尝试发送它。 从double
Double.MAX_VALUE
值集中窃取合法值(例如Double.MAX_VALUE
)以表示null
表示问题:
Double.MAX_VALUE
作为数据。 Double.MAX_VALUE
作为其字面本身进行处理。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.