jyy00713692
jyy00713692
2009-07-21 10:59

关于变量类型

已采纳

[code="java"]<%

if(answer.get(0)!=null){
int i;
double a;
String b = (String)beginnum.get(0);//先将对象转换为字符串
String l = (String)length.get(0);
String v = (String)value.get(0);
String t = (String)type.get(0);
int bb = Integer.parseInt(b);//然后将字符串转换为int
int ll = Integer.parseInt(l);
int vv = Integer.parseInt(v);
out.print(t);
out.print("
您的答案是:
");
[color=red]if(t=="ke"){[/color] for(i=bb;i<(ll+1);i++){

    //out.print(" "+i+". ");
    String ansn = "t"+i+"";
    //out.print(ansn);
    if(session.getAttribute(""+ansn+"")!=null){
        out.print((String)session.getAttribute(""+ansn+""));
    }
    String insert="<select name='part0'>";
    for(a=0;a<vv+0.5;a=a+0.5){
        //out.print(a);
        insert=insert + "<option value='"+a+"'>"+a+"</option>";
    }
    insert= insert+"</select>";
    out.print(insert);
    out.print("<br>");
    }

}
}
%>[/code]

其中[color=red]if(t=="ke"){[/color]的值为否
但我out.print(t),输出的是ke
我如果写if(t="ke"),错误提示,无法将字符串赋予布朗型,请问我这个t声明的是字符串,输出的也是ke,为什么 在我这段程序中,if(t=="ke")得到的确是否呢
[b]问题补充:[/b]
兄弟你的方法是对的,但我还想知道,我出错的原因,希望你能指点下
[b]问题补充:[/b]
我的基础太差了,现在老让我加班,也没时间学习,天天下班到家10点才吃晚饭,过几天我准备辞职回家先把基础学好了。谢谢各位了

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

6条回答

  • pjuneye pjuneye 12年前

    String在Java中被定义成了对象,而不是基本数据类型.
    Java中对象的比较要通过equals()和hashcode()方法来进行.
    具体的继续 LZ看下面
    [quote] 解析Java对象的equals()和hashCode()的使用
    http://blog.csdn.net/RichardSundusky/archive/2007/02/12/1508028.aspx[/quote]

    看明白了好好理解下,这个东东面试问的多. :D

    点赞 评论 复制链接分享
  • fdsafds fdsafds 12年前

    ke 是字符串是对象,
    "ke" == t 是在比较两个对象的内存地址 ,他们肯定不一样啊.

    比较字符串用 equals

    点赞 评论 复制链接分享
  • iteye_20589 iteye_20589 12年前

    [quote]其中if(t=="ke"){的值为否 [/quote]
    类的引用比较要用equals ==只是比较基本类型(int等),而"ke"是String 是类
    例如:ke.equals(t)

    [quote]但我out.print(t),输出的是ke [/quote]
    这没问题,字符串t输出内容是什么就是什么了..
    [quote]我如果写if(t="ke"),错误提示,无法将字符串赋予布朗型,请问我这个t声明的是字符串,输出的也是ke,为什么 在我这段程序中,if(t=="ke")得到的确是否呢 [/quote]
    if()里面是布尔弄...这么写t="ke"相当于if()里是String,所以报这个错..
    还是那句..字符串比较的是引用,所以要用String的equals方法

    点赞 评论 复制链接分享
  • wanghaolovezlq wanghaolovezlq 12年前

    应该这么写,string类型也是对象,你要比较是字符串的内容是否相等,
    而不是对象本身的引用是否相等
    [color=red]if("ke".equals(t))[/color]

    点赞 评论 复制链接分享
  • pjuneye pjuneye 12年前

    [quote]]if(t=="ke")[/quote]

    字符串 要用equal()来判断,这个也太....

    点赞 评论 复制链接分享
  • fdsafds fdsafds 12年前

    比较字符串用equals 方法

    "ke".equals(t);

    点赞 评论 复制链接分享

相关推荐