当前位置: 首页 > 面试题库 >

charAt的“分配的左侧必须是变量”问题

白浩气
2023-03-14
问题内容
private String kNow(String state, String guess) {
        for (int i = 0; i < word.length(); i++) {
            if (guess.equals(word.charAt(i))) {
                state.charAt(i) = word.charAt(i);
            }
        }
        return state;
    }

state.charAt(i)部分在标题中指出了问题。如果我的方法不是完全错误的,该如何解决该问题。


问题答案:

之所以不起作用,是因为它是类charAt(int x)的方法String-即它是一个函数,并且您无法在Java中为函数赋值。

如果您想逐个字符地遍历一个字符串,我可能会这样做:

Char[] GuessAsChar = guess.toCharArray();

然后改为对GuessAsChar进行操作。根据您的需要,可能有更好的方法(如更整洁的方法)来搜索字符串中的字符对等。



 类似资料:
  • 问题内容: 为什么不起作用? 无法理解为什么作业的左侧不是变量。 有人帮忙吗? 问题答案: 如果您只想增加5,而又不限于此,则可以避免冗长,而可以这样做: 这将in- in 的值原地增加5。

  • 作为我的第一个Java项目,我正在尝试制作一个定位不同城市的小程序。 我想从“City”类访问我的类“GPS”的变量,但我一直遇到这样的错误:作业的左侧必须是变量。任何人都可以向我解释我在这里做错了什么,以及今后如何避免这种错误? (我想把变量作为私有) 这个类“City”应该有坐标:

  • 我在想为什么会这样。我的其他项目工作完美,但这一个不行。

  • 问题内容: 这里发生了什么事? 它抛出一个错误,说 我正在做的是将值重新分配给一个已经声明的变量。 问题答案: 将新值分配给现有变量时,请从第二条语句中删除。 当您像在第一个语句中那样第一次执行简短声明和赋值时使用。

  • 问题内容: 例如,如果我有一个变量,并且在主线程中声明了一个runnable,并且想将x传递给该runnable的方法,则必须对其进行声明。为什么? 问题答案: 因为如果能够更改它们,可能会导致很多问题,请考虑以下事项: 这是一个粗略的示例,但您可以看到可能发生许多无法解释的错误。这就是变量必须为最终变量的原因。这是解决上述问题的简单方法: 如果您需要更完整的说明,则有点像同步。Java希望防止您

  • 我正在使用freemarker..想找到赋值变量的长度..我使用了size和length函数..但它失败并返回错误..请帮助我在如何找到赋值变量的长度 请找到下面我尝试过的代码... 对于“?size”左手操作数:需要扩展哈希、序列或扩展集合,但计算结果为markup_output(wrapper:f.c.templatexmloutputmodel):