gpt4 book ai didi

android - 使用 toCharArray 转换字符串会产生不同的字符

转载 作者:太空狗 更新时间:2023-10-29 16:22:13 26 4
gpt4 key购买 nike

这让我很困惑。我正在抓取一个 String 并将其转换为 Char 数组,但生成的字符与原始 String 不同。是什么赋予了?我试过一次一个字符,也尝试过 toCharArray()。相同的结果。

输出:

07-21 09:58:27.700: V/meh(22907): Loaded String = [C@42126d88

07-21 09:58:27.700: V/meh(22907): Convert to Char = [C@41693070

String temp = prefManager_.getString("PrevGameState", "");
Log.v("meh", "Loaded String = " + temp);

pieceStates_ = temp.toCharArray();
Log.v("meh", "Convert to Char = " + pieceStates_.toString());

最佳答案

它输出的值确实不是字符串,它是内存中的指针。可能您没有覆盖 toString() 方法,或者有问题。

两个指针不相同的事实并不意味着两个字符串不相等(应该与 .equals(..) 进行比较,而不是以任何不同的方式进行比较) .

更准确地说,如果 pieceStates_.toString() 打印出 [C@41693070 那么 toString 没有被覆盖,Java 也没有不知道如何打印它。同样的事情适用于另一个变量。那么 Java 中的数组类型在默认情况下是不可打印的,您应该使用 Arrays.toString(..) 来实际查看其内容。

关于android - 使用 toCharArray 转换字符串会产生不同的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11593040/

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