autoboxing

    8熱度

    1回答

    下面的程序分別打印「假」與「真」: Number n = true ? new Long(1) : new Double(2.0); System.out.println(n instanceof Long); System.out.println(n instanceof Double); 所以不會是一個長期的,但一個雙。然而,它的工作如預期正常類: 有 class B {} clas

    6熱度

    1回答

    可能重複: Java: Long result = -1: cannot convert from int to long 例如Integer foo = 4和Long foo = 4L都編譯,但Long foo = 4沒有。這是否有理由?

    2熱度

    2回答

    我已經做了一些關於這方面的研究,這似乎很不可能,但沒有一個答案已經足夠具體到我的問題。我目前有一個Stack<object>,我推送多個不同類型的對象。在我推動它們之前,我將它們裝箱到object,以便它們接受它們。是否有任何可能的方法自動拆箱的對象到原來的unboxed類型?

    3熱度

    3回答

    這不是一個真正的優化問題或任何東西。這本質上是一個什麼樣的問題。單例模式用於多次使用一個對象的單個實例。這一切都很好,但如果我嘗試用struct來做類似的模式,它不會得到一個單一的實例。 我來了這個試圖做一些Color struct System.Drawing。下面是一些示例代碼: class Colors { private static Color _red;

    0熱度

    4回答

    我有以下類: public class IntegerKey extends Number implements Comparable<IntegerKey> { private Integer m_key; public IntegerKey(Integer key) { m_key = key; } public IntegerKey(

    11熱度

    3回答

    由於在三元運算符中發生意外的類型轉換,導致前一天真的有點奇怪NullPointerException。鑑於這種(無用示例性)功能: Integer getNumber() { return null; } 我期待以下兩個代碼段編譯後爲完全相同: Integer number; if (condition) { number = getNumber(); } else

    6熱度

    2回答

    我一直在尋找Objective-C中的autoboxing(例如here)。是否有拆箱的新語法? 舉例來說,我想這樣做,但更短: NSArray *oneNumber = @[@1]; int one = ((NSNumber *)oneNumber[0]).intValue; 第二行的語法是可怕的。是否有任何新的語言功能來解決這個問題?

    1熱度

    1回答

    我有這個ENUM類型用typedef: typedef enum { ControlDisplayOptionNone = 0, ControlDisplayOptionOne = 100 } ControlDisplayOption; 而且我希望能夠把它們放入數組是這樣的: - (NSArray *)displayOptions { return @[@Con

    2熱度

    1回答

    代碼看起來像 public void option() { seeTasks = tasks.getTasks(); for (int i = 0; i < seeTasks.size(); i++) { for (int b = 0; b < seeBoxes.size(); b++) { System.out.println("see Tas

    10熱度

    2回答

    只是想了解自動裝箱,這是我從一兩件事分開做工作: Short s = 250; Long l = 250; 分配給Long l失敗。我期望這是因爲你不能擴大然後框(即它試圖將int值250擴大到long,然後將其放在它不能做的地方)。 但是,分配到Short s的作品。怎麼樣才能做到這一點呢?我的假設是它仍然在做拳擊和某種轉換。但是,如果是知道250適合short的情況,爲什麼不知道250會