mirror of
https://gitee.com/dromara/hutool.git
synced 2025-04-05 17:37:59 +08:00
fix bug
This commit is contained in:
parent
bd7d088178
commit
1c6bdf67e0
@ -12,6 +12,7 @@
|
|||||||
* 【core 】 修复NumberUtil.isXXX空判断错误(issue#2356@Github)
|
* 【core 】 修复NumberUtil.isXXX空判断错误(issue#2356@Github)
|
||||||
* 【core 】 修复Convert.toSBC空指针问题(issue#I5APKK@Gitee)
|
* 【core 】 修复Convert.toSBC空指针问题(issue#I5APKK@Gitee)
|
||||||
* 【json 】 修复Bean中存在bytes,无法转换问题(issue#2365@Github)
|
* 【json 】 修复Bean中存在bytes,无法转换问题(issue#2365@Github)
|
||||||
|
* 【core 】 ArrayUtil.setOrAppend()传入空数组时,抛出异常(issue#I5APJE@Gitee)
|
||||||
|
|
||||||
-------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -347,6 +347,13 @@ public class ArrayUtil extends PrimitiveArrayUtil {
|
|||||||
Array.set(buffer, index, value);
|
Array.set(buffer, index, value);
|
||||||
return buffer;
|
return buffer;
|
||||||
} else {
|
} else {
|
||||||
|
if(ArrayUtil.isEmpty(buffer)){
|
||||||
|
// issue#I5APJE
|
||||||
|
// 可变长类型在buffer为空的情况下,类型会被擦除,导致报错,此处修正
|
||||||
|
final T[] values = newArray(value.getClass(), 1);
|
||||||
|
values[0] = value;
|
||||||
|
return append(buffer, values);
|
||||||
|
}
|
||||||
return append(buffer, value);
|
return append(buffer, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -527,4 +527,11 @@ public class ArrayUtilTest {
|
|||||||
result = ArrayUtil.replace(g, 0, h);
|
result = ArrayUtil.replace(g, 0, h);
|
||||||
Assert.assertArrayEquals(g, result);
|
Assert.assertArrayEquals(g, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void setOrAppendTest(){
|
||||||
|
String[] arr = new String[0];
|
||||||
|
String[] newArr = ArrayUtil.setOrAppend(arr, 0, "Good");// ClassCastException
|
||||||
|
Assert.assertArrayEquals(new String[]{"Good"}, newArr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user