读书人

全局变量有关问题

发布时间: 2011-12-30 23:30:45 作者: rapoo

全局变量问题
public String CheckChargeRule(String code)
{
String checkCR = null;
BusinessDao bd = new BusinessDao();
String[] getCR = bd.getChargeRule();
for(int i = 0;i <getCR.length;i++)
{
if(getCR[i] == code)
{
checkCR = "checked ";
break;
}
}
return checkCR;
}
checkCR返回的值只是null,请问能让他返回checked吗?有实现的方法吗?谢谢!

[解决办法]
好奇怪,这好像不是一个编程问题,而是一个设计问题。

你需要搞清楚,getChargeRule()返回的是什么,以及你传给CheckChargeRule()方法的参数是什么。不了解你的设计,没法回答你的问题。
[解决办法]
如果传入的string code和BusinessDao中的getcharrule()值相同就出现checkCR = "checked ";了呀。

[解决办法]
在JAVA中有全局变量这么一说吗 ?
[解决办法]
enen
[解决办法]
这个问题可以啃定的是你的 IF语句没有里的内容没有被运行到

其中可能有两个方面的原因存在:

一、是你的IF(getCR[i] == code)这个表达式里的值不存在相等的情况

二、如果你确定getCR[i]和code有相等的什值,而没有能执行IF括号中的语句
那么你在IF表达式中用equals()方法来判断两个值是否相等
因为在判断两个字符串是否相等时,如果用==来比较,比较的是引用对像的引用址是 否想同,而不是引用对像指向的值是否想同.
[解决办法]
ls正解,是对象的比较,怎么能用==呢,应该用.equals();
[解决办法]
==是浅度对象比较,equals方法是深度对象比较,==比较的是两个对象是否是指向同一引用,EQUALS比较是两个对象的内容,所以你的问题要用EQUALS方法解决

读书人网 >J2SE开发

热点推荐