关于Java把从文件中的读出的内容赋给ArrayList集合的问题

fwj1987bh 2016-10-04 08:26:13
ArrayList al=new ArrayList();
File f=new File("E:/新建文件夹/111.txt");
FileReader fr=new FileReader(f);
BufferedReader br=new BufferedReader(fr);
String s=br.readLine();
while(s!=null){
al.add(s);
s=br.readLine();
}

System.out.println(al.get(1)=="66666");
如上题,字符串66666是al.get(1)的元素,但为什么最后输出的结果是“false”。希望高手解答一下,谢谢!
...全文
408 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
浪迹天涯-Jason 2016-10-06
  • 打赏
  • 举报
回复
==号,比较的是两个对象的地址值,那么肯定不相等。String类型重写了equals方法,字符串本身就是对象。所以需要equals方法。
AAlAAzCCj 2016-10-05
  • 打赏
  • 举报
回复
"6666".equals(al.get(1))
AAlAAzCCj 2016-10-05
  • 打赏
  • 举报
回复
==比较的是数据的内存地址是否相等,不是比较内容,字符串的内容比较要用equals方法,你们老师没讲吗?让他卷铺盖回家吧!
  • 打赏
  • 举报
回复
ArrayList al=new ArrayList(); File f=new File("E:/新建文件夹/111.txt"); FileReader fr=new FileReader(f); BufferedReader br=new BufferedReader(fr); String s=br.readLine(); while(s!=null){ s=br.readLine(); al.add(s); }
捏造的信仰 2016-10-04
  • 打赏
  • 举报
回复
楼主要学会贴代码
public class Demo {
    public static void main(String[] args) {
        if (args.length == 0) {
            System.out.println("no args.");
        }
    }
}
像楼主的代码层级多,又没有排版,没法看。
落雨尘封 2016-10-04
  • 打赏
  • 举报
回复
when you compare two String, pls use equals() to compare their content instead of using == to compare their address or it will always return false

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧