问答详情
源自:2-4 Java 中的 String 类常用方法 Ⅱ

if语句中为什么错了?可以用equals判断内容是否相同呀。

http://img.mukewang.com/5951bc01000121e305570141.jpg

if语句中为什么错误?


提问者:慕粉18235104846 2017-06-27 10:01

个回答

  • 你微笑時好美
    2017-12-14 15:08:57

    equals()方法本身返回的就是一个boolean类型的值,即true和false 。你的if里面就等价于a[i]==true或者a[i]==false 这本身就是错误的.

  • 慕粉1409177243
    2017-08-23 00:21:30

    代码里有两个问题:

    1, for 语句中的i 应该赋初值为0            应写成     int i = 0;

    2,   在java里要获取一个char , 得用s.charAt(i) 语句, python 可以用s[i] ; 而且char之间比较得用==, 不能用.equals         应写成   s.charAt(i)=='a'

  • 邀魂斩月
    2017-07-06 20:22:30

    equals()方法

      比较的是对象的引用是否指向同一块内存地址。

      可以通过重写来实现比较两个对象的值是否相同。

      “==”用来比较引用数据类型时,也是比较内存地址。

    需要注意的是:因为在String、Double等封装类中,已经重载(overriding)了Object类的equals()方法,是进行内容的比较。

  • 慕九州1035057
    2017-06-27 16:01:19

    你这个s变量是字符串吧?字符串取每个字符可以用s.charAt(i)=='a'这样来判断。charAt()返回的是char类型,用==比较

  • qq_Anonymous_7
    2017-06-27 10:30:44

    s[i].equals('a') ,不要双等号

  • 慕运维2858188
    2017-06-27 10:29:22

    int i 没有赋初始值

  • siweitang
    2017-06-27 10:27:54

    直接 s[i].equals('a')  不需要 s[i] == xxx