小编hel*_*ker的帖子

将字符串列表转换为字符串数组时的不同行为

我正在使用Java中的Collection框架,在那里我遇到了一个奇怪的问题.我在ArrayList的帮助下制作了2个Strings 1列表,而第二个是使用Arrays.asList(T ...)制作的.

创建这两个列表后,我尝试将这些列表转换为带有list.toArray()的String数组,
因为list.toArray()方法调用返回一个对象数组,所以我必须显式地转换为String [].

在施放后,一些奇怪的行为发生在:

情况#1 :(使用ArrayList创建列表),将运行时异常作为java.lang.ClassCastException:[Ljava.lang.Object; 无法转换为[Ljava.lang.String;

情况2 :(使用Arrays.asList(T ...)创建的列表)运行正常.

这是代码

String [] str = null ,str1 = null ;
List<String> list = new ArrayList<String>();
list.add("a");
List<String> list1 = Arrays.asList("a");
str = (String[]) list.toArray();  // Runtime Exception 
str1 = (String[]) list1.toArray(); // Runs Fine 
Run Code Online (Sandbox Code Playgroud)

java arrays collections arraylist

8
推荐指数
2
解决办法
360
查看次数

Android M中的Developer选项中的Audio Source选项

我最近更新到Android Marshmallow.在开发人员选项中,我找到了一个新选项"选择USB配置",其子选项如

  • 仅充电
  • MTP
  • PTP
  • RNDIS(USB以太网)
  • 音频源
  • MIDI

我使用了前三个选项"仅充电",MTP和PTP.但最后3个选项如何运作?

我尝试使用"Audio Source",我认为这个选项旨在将您的手机用作音频采购的USB主机,但我仍然无法弄清楚它是如何工作的?

android android-6.0-marshmallow

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

Android Studio 级构建对于 NDK 项目来说花费太多时间

我正在开发 NDK 项目并使用 Android Studio 2.3.3、Gradle 3.3、SDK 版本 26。NDK 已经与此 Android Studio 版本集成,因此要添加新的 cpp 文件,我只需在 CMakeList.txt 中更新该文件,但是之后 Gradle 构建需要 20 多分钟左右。

我已经尝试了论坛 Solution1Solution2上建议的许多解决方案,但这些都不适合我。

然而,6 个月前提出了 1 个非常具体的查询,就像我的 Building Symbols for NDK 项目在 Android Studio 中花费太长时间一样 ,但仍然没有答案。有没有办法解决这个问题。

c++ android cmake gradle android-ndk

5
推荐指数
0
解决办法
473
查看次数