gpt4 book ai didi

java - 安卓字符串问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:38:52 25 4
gpt4 key购买 nike

我的程序在一个 Activity 中生成一个字符串列表,然后将其传递给另一个 Activity ,第二个 Activity 使用这些字符串。

当我通过在第二个 Activity 开始时打印出列表的每个元素进行测试时,打印输出看起来很完美。例如,如果我希望列表包含 "Lemon Juice",它的打印结果完全正确,但第二个 Activity 中的逻辑仍然不起作用。如果我手动将 "Lemon Juice" 添加到列表中,第二个 Activity 中的逻辑工作正常,所以问题是接收到的列表中的字符串不知何故不是真正的 "柠檬汁”。但是:

  1. 打印完全正确(包括检查前面和末尾的空格)。
  2. 我已尝试将接收到的列表元素显式转换为 (String) 以确保它们是字符串。
  3. 如果我运行 "Lemon Juice".contains(received String) 它返回 true,如果我运行 received String.contains("Lemon Juice") 它返回 true,但如果我运行 received String.equals("Lemon Juice"),它返回 false。这让我很困惑。

谁能想出一个可能的解释,说明某些被强制转换为字符串、打印为字符串并且看起来像字符串的东西为何表现得不像字符串?

编辑以根据要求包含一些代码:

// 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);
}

不知何故,当我将 exs 传递给我需要使用字符串的方法时,它不起作用,即使如上所述,打印和调用包含等都显示字符串,在我将它添加到 exs 之前,是我想要的。

最佳答案

当您只发布一小段代码时很难提供帮助。

但我猜测 String.contains 有效而 String.equals 无效的原因可能是字符串中有空格。传递和接收数据时,在 Activity 的两侧尝试 String.trim

关于java - 安卓字符串问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20722516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com