并不是很理解== 和equals之间区别。
看了一个大佬回答 我是这样认为的。
基本数据类型,应用双等号(==),比较的是他们的值。
复合数据类型(类) 用(==)进行比较的时候,比较的是他们在内存中的存放地址,
而equals的方法原本也是比较地址的,但在一些类库当中这个方法被覆盖掉了,如String,Integer,Date在这些类当中equals有其自身的实现,而不再是比较类在堆内存中的存放地址了,就是所谓比较值。
是不是这样认为呢?
如果是
题目中String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd"; 因为是string 那用equals比较的就是值?为什么不能单独用equals呢 a是值啊?有大佬知道吗?
另外 为什么不能用s[i].equals('a')呢