在Java中是否有.Net TypeConverter等效

ins*_*pid 6 .net java types language-comparisons

在.NET中,当我有一个可以作为多个类型存在的"值"时,我可以轻松地使用TypeConverter在这些类型之间切换(货币类型,xml数据与对象表示,等等).在Java中,我不确定处理这种情况的首选方法是什么.Java中是否有TypeConverter等价物?

Kan*_*ath 2

对于来自 .NET 世界的人来说,如果没有开箱即用的工具,将会感到惊讶。这是因为我们有像基元(int、long)等、它们的基元包装器(Integer、Long 等)、在需要时从 int 到 Integer 的自动装箱(这是来自 JDK 1.5)。

因此,我们这些可怜的 Java 开发人员手动转换东西(上面由 @Boolean 给出的一些例子),而且在执行这些操作时使用 == 运算符也会带来无尽的麻烦。例如:缓存最多 127 的自动装箱整数。

public void testsimple() {
    Integer a = 124, b = 124, c = 500, d= 500;
    System.out.println(a == b); //prints true in JDK 1.6
    System.out.println(c == d); //prints false in JDK 1.6
}
Run Code Online (Sandbox Code Playgroud)

如果您正在编写一个需要太多数据转换的大型应用程序,您可以自己编写一些东西。Spring 的“TypeConverter”接口可以是一个不错的开始。

如果遇到问题,请使用此链接http://imagejdocu.tudor.lu/doku.php?id=howto:java:how_to_convert_data_type_x_into_type_y_in_java