CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

奇怪了...比较字符串的问题?在线等

楼主mouselshl()2005-01-31 10:21:44 在 Java / Web 开发 提问

String   sta_no=(String)request.getParameter("s_station");  
  out.print(sta_no);//结果都是aa,可是就是if判断却不等,去执行else的代码了?  
  if   (sta_no="aa"){..}  
  else{..}  
  问题点数:50、回复次数:21Top

1 楼java_augur(听着音乐 ☆☆☆☆☆☆)回复于 2005-01-31 10:29:54 得分 0

=     ------>   ==Top

2 楼steedhorse(晨星)回复于 2005-01-31 10:30:36 得分 10

if(sta_no.equals("aa"))Top

3 楼yxhzj(余华[学习J2EE中])回复于 2005-01-31 10:32:38 得分 0

String   sta_no=(String)request.getParameter("s_station");  
  out.print(sta_no);//结果都是aa,可是就是if判断却不等,去执行else的代码了?  
  if   (sta_no.equals("aa"))  
  {   ..}  
  else  
  {..}Top

4 楼r1233211234567()回复于 2005-01-31 10:33:27 得分 0

getParameter()取得值是否存在!  
   
  你先打印sta_no是否是null值!  
   
  Top

5 楼r1233211234567()回复于 2005-01-31 10:34:10 得分 0

==Top

6 楼steedhorse(晨星)回复于 2005-01-31 10:34:18 得分 10

对于String   a,   b;  
  “a   ==   b”用于判断变量a和b是否引用到同一个对象,或者都是null。(Java里头除了内建类型的变量外,其他的都是引用)  
  “a.equals(b)”用于判断a所引用的串和b所引用的串是否包含相同的内容(只是内容相同,不一定是同一个串)。Top

7 楼loveyousomuch(★Allen★)回复于 2005-01-31 10:34:32 得分 10

呵呵,基本语法问题  
  不过,得到页面的参数后,最好是做必要的处理,以免不必要的麻烦  
  String   sta_no=request.getParameter("s_station");  
  sta_no=(sta_no!=null&&!sta_no.equals(""))?sta_no.trim():"";  
   
  if(sta_no.equals("aa")){  
          ......  
  }else{  
          ......  
  }Top

8 楼r1233211234567()回复于 2005-01-31 10:35:26 得分 0

应该用equals.()来比较!==比较的是地址,equals.()比较的是值  
  Top

9 楼jcw2016(稻草人)回复于 2005-01-31 10:35:35 得分 0

用equals函数来比较两个字符串Top

10 楼loveyousomuch(★Allen★)回复于 2005-01-31 10:36:41 得分 10

嘿嘿,jdk1.3的版本可以用"==",  
  后面的版本不行了,  
   
  不过得到参数后最好是做必要的处理,以免引起不必要的错误:  
          String   sta_no=request.getParameter("s_station");  
          sta_no=(sta_no!=null&&!sta_no.equals(""))?sta_no.trim():"";  
  Top

11 楼li_d_s(鄙视那些不懂Java却跑来乱骂的人,.NET没啥了不起)回复于 2005-01-31 10:37:03 得分 0

对,==判断的是存储地址,equals判断的才是内容Top

12 楼Hannibal005(寒泥巴)回复于 2005-01-31 10:37:20 得分 0

if   (sta_no.compareTo("aa")==0)Top

13 楼mu_x(阿木)回复于 2005-01-31 10:41:43 得分 0

比较字符串是否相等用equals方法。Top

14 楼xitianjile(空想社會主義)回复于 2005-01-31 10:46:12 得分 0

==是比地址的!!Top

15 楼java_augur(听着音乐 ☆☆☆☆☆☆)回复于 2005-01-31 10:50:35 得分 5

class   test_equal{  
  public   static   void   main(String[]   args){  
  if(a   ==   b){  
  System.out.println("it's   equal");  
  }  
  else  
  System.out.println("it's   not   equal");  
  }  
  private   static   String     a="string";  
  private   static   String     b="string";  
  }  
  所有相同的String指向同一地址。  
   
  it's   equalTop

16 楼osborne(做人要本份!)回复于 2005-01-31 10:51:55 得分 0

Java中String是一个对象,   你要比较时需要equals来进行,   直接用==号的话,   比较的是地址!Top

17 楼cuilichen(fjfjfjfj)回复于 2005-01-31 10:56:52 得分 0

用equals函数来比较两个字符串,"=="比较得到的是两个对象的reference指向的是不是同一个目标。  
  Top

18 楼jockhuang(黄昏)回复于 2005-01-31 11:06:54 得分 5

非空的话trim()一下再比较。  
  btw:一般用常量去比,可以不用判断是否空值.  
  if   ("aa".equals(sta_no))Top

19 楼Sunboyjava(阳光男孩)回复于 2005-01-31 11:27:44 得分 0

说了这么。。。我给个建议。。。  
   
  那就是。。快结帖吧。。Top

20 楼mouselshl()回复于 2005-01-31 11:49:21 得分 0

谢谢...........Top

21 楼shan1119(大天使,卐~解!)回复于 2005-01-31 11:53:56 得分 0

if(sta_no.equals("aa"))Top

相关问题

  • 字符串比较
  • 比较字符串
  • 字符串比较
  • 关于字符串比较大小问题,在线等!
  • 奇怪!!!明明相同的两个字符串,比较后非说不同??????
  • 字符串比较函数
  • 字符串的比较
  • 字符串比较怪事!
  • 字符串比较问题
  • 字符串比较问题

关键词

  • 内容
  • null
  • sta
  • equals
  • 引用
  • aa
  • getparameter
  • 判断
  • station
  • 地址

得分解答快速导航

  • 帖主:mouselshl
  • steedhorse
  • steedhorse
  • loveyousomuch
  • loveyousomuch
  • java_augur
  • jockhuang

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo