Java 是否可以确定从活动发回的数据是字符串还是字符串[]?
我正在从我的Java 是否可以确定从活动发回的数据是字符串还是字符串[]?,java,android,android-intent,android-activity,Java,Android,Android Intent,Android Activity,我正在从我的main活动启动activityForResult()。根据用户在SecondActivity中选择的选项之一,它将返回字符串或字符串[]。在myMainActivity中,我覆盖了onActivityResult(),但是如何首先测试返回的数据,以确定它是字符串还是字符串[],以便我可以相应地处理它 这就是我处理阵列的方式: protected void onActivityResult(int requestCode, int resultCode, Intent data) {
main活动启动activityForResult()
。根据用户在SecondActivity
中选择的选项之一,它将返回字符串或字符串[]
。在myMainActivity
中,我覆盖了onActivityResult()
,但是如何首先测试返回的数据,以确定它是字符串还是字符串[]
,以便我可以相应地处理它
这就是我处理阵列的方式:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
String[] result =data.getStringArrayExtra("elements");
et.setText("");
for(int i=0;i<result.length;i++){
et.append(result[i].toString());
}
}
activityresult上受保护的void(int-requestCode、int-resultCode、Intent-data){
//TODO自动生成的方法存根
String[]result=data.getStringArrayExtra(“元素”);
et.setText(“”);
对于(inti=0;i你几乎做到了..只要检查一下
if(result != null)
// it is array
为什么不总是从SecondActivity
返回String[]
?如果只有一个String
,只需返回一个String[]
,其中有一个String
。用同一个键返回两种不同类型的对象,这似乎是一个糟糕的设计…我会将它们放在不同的键中。
类似于元素
到字符串
,以及元素
到字符串[]
String[] result =data.getStringArrayExtra("elements");
if(result == null)
String strResult = data.getStringExtra("element");
我也支持Steven所说的。但我不知道你的应用程序的设计以及你这样做的原因,所以你必须做出选择。谢谢大家的回答。Steven你说得很好。谢谢。我会接受你的回答,但我还要再等5分钟:)