【问题标题】:How to compare two characters in Java in if conditon? [duplicate]如何在if条件下比较Java中的两个字符? [复制]
【发布时间】:2016-12-12 12:32:18
【问题描述】:

如何在 Java 中比较两个字符?

while(s1.hasNext()) {
    if(a[j].equals('x')
        x++;
    if(a[j].equals('y')
        y++;
}

我已经使用 for 循环重复了 n 次循环,并且 a[j] 是一个数组。我在 while 循环内的 if 条件下收到错误。谁能解释一下这个错误?

【问题讨论】:

  • 括号没有正确关闭 if(a[j].equals('x'))
  • 错误是什么?
  • char 不能被取消引用..在 if 条件行

标签: java


【解决方案1】:

您还可以使用== 比较字符,如下所示:

while(s1.hasNext())
{
    if(a[j] == 'x')
    x++;
    if(a[j]=='y')
    y++;
}

这里的数组a应该是一个字符数组。

如果a 是一个字符串,则必须使用s.charAt(int index) 来获取所需的字符,如下所示:

while(s1.hasNext())
{
    if(a.charAt(j) == 'x')
    x++;
    if(a.charAt(j) == 'y')
    y++;
} 

【讨论】:

  • a 不是字符串,它是字符数组.. 而且我已经写了你所说的,但仅在 if 条件下得到相同的错误..
  • 什么是错误??@Ch_03
  • 错误:找不到符号 if(a.charAt(j) == 'x') 符号:方法 charAt(int) 位置:char[] 类型的变量 a
  • 我说如果a 是字符串而不是使用a.charAt()。如果它是一个数组而不是使用我的第一个 sn-p。 @Ch_03
  • 我已经尝试过的第一个 sn-p 但如果没有工作..因为没有编译错误但我没有得到输出..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-15
  • 1970-01-01
  • 2019-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多