use*_*666 6 java string android arraylist
我的程序在一个活动中生成一个字符串列表,然后将其传递给另一个活动,第二个活动使用字符串.
当我通过在第二个活动开始时打印出列表的每个元素进行测试时,打印输出看起来很完美.例如,如果我希望列表包含"Lemon Juice",它会打印出完全正确的,但是第二个活动中的逻辑仍然不起作用.如果我"Lemon Juice"手动添加这样的列表,第二个活动中的逻辑工作正常,所以问题是,收到的List中的字符串不是真的"Lemon Juice".但:
"Lemon Juice".contains(received String)它返回true,如果我运行收到String.contains("Lemon Juice")它返回true,但如果我运行收到String.equals("Lemon Juice")它返回错误.这对我来说非常困惑.任何人都可以想到一个可能的解释,如何将某些东西作为一个字符串,打印成一个字符串,看起来像一个字符串,是不是像字符串一样?
编辑以包含一些代码:
// instance variable at top of class--list to which strings will be added for use in
// 2nd activity
private List<String> exs = new ArrayList<String>();
// get array of strings from extra from intent from first activity
String[] recExs = getIntent().getStringArrayExtra(BrowseActivity.EXS);
for (int exx = 0; exx < recExs.length; exx++) {
String curEx = (String) recExs[exx];
exs.add(curEx);
}
Run Code Online (Sandbox Code Playgroud)
不知何故,当我将exs传递给方法时我需要使用字符串,它不起作用,即使如上所述,打印和调用包含等都显示字符串,在我添加到exs之前,是在我想要它.
当您只发布一小段代码时,很难提供帮助。
但我猜原因是String.contains有效但String.equals无效的原因是字符串中可能有空间。String.trim在传递和接收数据时在 Activity 的两侧尝试。
| 归档时间: |
|
| 查看次数: |
330 次 |
| 最近记录: |