我需要端口代碼從黑莓Android和麪對小問題: 例:BB代碼:如何新元素添加到一個數組
public class MyClass{
private MyObject[] _myObject;
public void addElement(MyObject o){
if (_myObject == null){
_myObject = new MyObject[0];
}
Arrays.add(_myObject, o);
}
}
不幸機器人不具有Arrays.add()
這是部分net.rim.device.api.util.Arrays
(static void add(Object[] array, Object object)
)
是否有更換爲Android動態擴展和追加到簡單的數組,所以我不會改變我的代碼的其餘部分。
我試着寫我自己的工具,但它不工作:
public class Arrays {
public static void add(Object[] array, Object object){
ArrayList<Object> lst = new ArrayList<Object>();
for (Object o : array){
lst.add(o);
}
lst.add(object);
array = lst.toArray();
}
}
..之後我打電話
public void addElement(MyObject o){
if (_myObject == null){
_myObject = new MyObject[0];
}
Arrays.add(_myObject, o);
}
的_myObject
仍然含有0元素。
感謝您快速回答。請看看這個規範:http://www.blackberry.com/developers/docs/3.7api/net/rim/device/api/util/Arrays.html有void add(Object [] array,Object目的);輪圈開發者如何實現它對他們有用?我的意思是他們只是調用add(object_array,new_element);並用新元素擴展object_array? – kompotFX
@ kompotFX:他們沒有。完全不清楚那個記錄不好的方法是幹什麼的,但我可以向你保證,如果你打印出'array.length',然後調用'add(array,「hello」)',然後再次打印'array.length',它會有相同的價值。它有可能會在數組中找到一個具有空值的元素,並將該元素的值設置爲傳入的元素的值。儘管如此,這與添加*不同。 –
這很奇怪,因爲實際上我需要移植到黑莓手機上的代碼樣本。 – kompotFX