JAVA中的比较字符串问题

来源:互联网 责任编辑:栏目编辑 发表时间:2013-07-01 04:38 点击:

1>昨天,遇到一个问题特令我无语,大意如下:

String str ="3a5b@";
String strTemp =str;
for(int i=0;i<strTemp.length();i++){
   if(strTemp.substring(i,i+1) !="@")  遇到@不打印
          System.out.print(strTemp.substring(i,i+1));
 


  就上面这么简单的代码,让我漫长的调试了一个小时,没办法啊,有时候我老用C++的角度去看JAVA的代码,以上代码用C++编译肯定能出

  来预期的结果,可JAVA不行啊,最后我才忽然想起来,JAVA中比较非空的字符串不能用=,只能用equal函数, 唉.................

  if(!strTemp.substring(i,i+1) .equals("@"))

  2>最近,我还发现了一个问题,有很多人老这样写代码:

  if(str==null)

  虽然这样写只要你注意点不会出现什么错误,但万一呢: if(str = null) 这样写编译器也不会报错,但你可得花费一部分时间来逐一调度了

  所以我还是建议新手这样写 if(null ==str)(做用等号的比较时把常量写在等号前面) 如果你一不小心少写个等于号,编译编译器就会报错

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Java编程语言的八大优点
    • JVM对象生命周期详细介绍
    • Java平台上的CRM系统
    • Java 算数测试小程序
    • Command(命令模式)
    • Java环境 使用Resin在NT环境下配置JSP环境
    • Java 一个简单的画图程序
    • Java 日历的小程序
    • Java 统计代码的小工具
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1