Android Java.util.Arrays类
这可能是一个答案显而易见的问题。我只是看不见,当有人向我清楚地指出它时,我可能会觉得自己很渺小 我在Eclair MR1级别使用Android,因此我的Android清单有:Android Java.util.Arrays类,java,android,arrays,Java,Android,Arrays,这可能是一个答案显而易见的问题。我只是看不见,当有人向我清楚地指出它时,我可能会觉得自己很渺小 我在Eclair MR1级别使用Android,因此我的Android清单有: <uses-sdk android:minSdkVersion="7" /> 但是当我使用它时,我在Eclipse中得到一个编译错误,说“类型数组的方法copyOf(byte[],int)是未定义的 有人能指出我做错了什么吗?数组。API级别7没有定义copyOf(byte[],int)。在您提供的链接中,查
<uses-sdk android:minSdkVersion="7" />
但是当我使用它时,我在Eclipse中得到一个编译错误,说“类型数组的方法copyOf(byte[],int)是未定义的
有人能指出我做错了什么吗?数组。API级别7没有定义copyOf(byte[],int)
。在您提供的链接中,查看右上角,您会看到一个复选框,上面写着“按API级别筛选”。选择7
将删除该方法
为什么还要使用数组?在Java中,除非遇到性能问题,否则几乎应该始终使用ArrayList
。在这种情况下,您根本不必担心数组的大小。如果您的函数必须接受字节[]
参数,然后我建议调用类似于List myList=Arrays.asList(plain)
Arrays.copyOf(byte[],int)
的函数。在您提供的链接中,查看右上角,您会看到一个复选框,上面写着“按API级别筛选”“。选择7
将删除该方法
你为什么要使用数组呢?在Java中,除非遇到性能问题,否则几乎应该始终使用
ArrayList
。在这种情况下,您根本不必担心数组的大小。如果您的函数必须接受byte[]
参数,那么我建议调用类似List myList=Arrays.asList(plain)
什么是您的目标sdk?您是否尝试过使用sdk版本9构建?如果该方法在API 9之后可用,那么您需要根据该方法或更高版本进行构建?@Peter vdL:您可能可以使用静态方法代替。您的目标sdk是什么?您是否尝试过使用sdk版本9构建?如果这个方法从API 9开始就可以使用,那么你就需要在这个基础上进行构建,或者以后再进行构建?@Peter vdL:你可能可以使用静态方法来代替。你和MH都很好地解决了这个问题,我觉得自己很小。此API附带API级别9。非常感谢。正如你所猜测的,性能是最重要的,这就是为什么我要使用原子类型的数组。你和MH都做到了,我觉得自己很小。此API附带API级别9。非常感谢。正如您所猜测的,性能是最高优先级,这就是为什么我要使用原子类型的数组。
byte [] padToLength (byte[] plain) {
try{
byte[] plainpad2 = java.util.Arrays.copyOf(plain, plain.length+10); //why won't this compile?
} catch (Exception e) {
}