小编Fab*_*nez的帖子

对于相同类型的不同值,为什么C#调用对于重载方法不同?

我对c#方法重载和调用解析有一个疑问.

假设我有以下C#代码:

enum MyEnum { Value1, Value2 }

public void test() {
    method(0); // this calls method(MyEnum)
    method(1); // this calls method(object)
}

public void method(object o) {
}

public void method(MyEnum e) {
}
Run Code Online (Sandbox Code Playgroud)

请注意,我知道如何使它工作,但我想知道为什么一个int(0)值调用一个方法而另一个(1)它调用另一个方法.这听起来很尴尬,因为两个值具有相同的类型(int),但它们对于不同的方法是"链接的".

c# enums overloading

12
推荐指数
1
解决办法
351
查看次数

从java.sql.Timestamp到joda的LocalDate的意外转换

我在将Timestamp对象转换为joda的LocalTime时遇到问题.

见下面的例子:

public static void main(String[] args) {

    Timestamp t = Timestamp.valueOf("1111-11-11 00:00:00");
    System.out.println(t); //-- prints '1111-11-11 00:00:00.0'
    System.out.println(new LocalDate(t)); //-- prints '1111-11-17'

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(t);
    System.out.println(LocalDate.fromCalendarFields(calendar)); //-- prints '1111-11-11'
}
Run Code Online (Sandbox Code Playgroud)

我无法确定为什么'new LocalDate(t)'会导致'1111-11-17'.任何人都可以帮助我吗?

我在使用joda-time-hibernate填充我的bean类型为LocalDate的属性时注意到这个"问题".

java calendar jodatime

1
推荐指数
1
解决办法
1921
查看次数

标签 统计

c# ×1

calendar ×1

enums ×1

java ×1

jodatime ×1

overloading ×1