【问题标题】:Java for loop word [closed]Java for循环词[关闭]
【发布时间】:2021-02-20 09:15:10
【问题描述】:

如何在这里使用 == 运算符?

我也需要帮助,我在这里有一个列表数组,我想在我的数组中添加任何空格的位置

length 只是一个保存单词长度的变量

for (int i = 0; i<length; i++) {
        if (word.charAt(i)) == (' '){
            whitespaces_array.add(i);
         }

【问题讨论】:

  • Java 要求您在整个表达式周围加上括号,例如if (word.charAt(i) == ' ') { ...
  • 我在第 3 行收到此语法错误“无法在原始类型 int 上调用 add(int)”
  • @MoR whitespaces_array 定义为什么?
  • @Jaden ArrayList whitespaces_array = new ArrayList();

标签: java loops for-loop


【解决方案1】:

正如评论中所揭示的,实际问题是您在问题中没有提供足够的信息。

在 Java 中,Integers 是对象,而 ints 也是整数,但它们是原始数据类型。 int 或多或少直接映射到一组简单的位,这些位通过算术运算进行操作。我不会在这里深入讨论差异,但关键是Integer != int

正确的代码应该如下所示:

ArrayList<Integer> whitespaces_array = new ArrayList<Integer>();

for ( int i = 0; i < length; ++i ) {
    if ( word.charAt( i ) == ' ' ) {
        whitespaces_array.add( i );
    }
}

【讨论】:

  • 我这样做了,最后一个括号有语法错误。它说语法错误,插入“}”以完成 MethodBody
  • @MoR 好吧,这超出了这个问题,然后回答。虽然这些都是相对基本的问题,但您应该查看现代的、最新的教程/课程,以便学习 Java。
  • 好的,我是 java 新手,没问题,但我设法解决了这个问题。谢谢
【解决方案2】:
if (checked value == required value) {
   do stuff;
}

' ' 周围不需要括号,您需要将第二个右括号从 word.charAt(i) 之后移到您要检查的所需值之后。

完成此操作后,请在大括号前放置一个空格,就像在 for() 循环的第一行中所做的那样。 Java 不需要它,但对大多数人来说它看起来要整洁得多:)

【讨论】:

    【解决方案3】:

    只是想添加一些与此代码相关的对我有帮助的东西

    (ArrayList list1)

    此注释中的第二行是您在使用整数时在方法中引用列表数组时输入的参数,您不会输入 int list1,因为上面有人说过 int 和 Integar 是不同的

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-02
      • 1970-01-01
      • 1970-01-01
      • 2022-06-10
      • 2016-08-26
      • 2014-12-05
      • 2016-03-25
      相关资源
      最近更新 更多