请问怎么判断一个集合中的一个值与另一个值相等,
请问怎么判断一个集合中的一个值与另一个值相等,如果其中有一个值相等的话就不执行一个方法,如果没有的话只执行一次这个方法!!!!...
请问怎么判断一个集合中的一个值与另一个值相等,如果其中有一个值相等的话就不执行一个方法,如果没有的话只执行一次这个方法!!!!
展开
2个回答
展开全部
在判断好值是否相等之后,要执行哪个方法就比较容易了。我这里写了两个方法,看你能否用得上。
public void testListValue() throws Exception {
List<Object> list = new ArrayList<Object>() ;
String msg = checkAllListValue(list) ;
if (msg.equals("Equal")) {
//执行:相等时的方法。(你说的有一个方法不希望在这里执行)
}else if (msg.equals("Not_Equal")) {
//执行:不相等时的方法。(你说的只执行一次的方法。)
}else {
//参数错误 处理
}
}
/**
* 遍历判断
* @param list
* @return
* @throws Exception
*/
public String checkAllListValue (List<Object> list) throws Exception {
boolean flat = true ;
String str = "Not_Equal" ;
if (list!=null&&list.size()>0) {
for (int i = 0; i < list.size(); i++) {
if (flat) {
for (int j = 0; j < list.size(); j++) {
//在这里判断两个值是否相同,如果有需要可以根据具体情况修改
//例如list.get(j).toString().trim().equals(list.get(i).toString().trim())
//可根据你的集合类型做下微调
if (list.get(j)==list.get(i)) {
flat = false ;
str = "Equal" ;
break ; //如果有相同值,则跳出循环 返回 Equal 。
}
}
}else {
break ;
}
}
return str ;
}else {
return "Bad_Parameter" ; //如果List为空 则返回错误msg提示。
}
}
/**
* 根据指定值判断。
* @param list
* @param index1
* @param index2
* @return
* @throws Exception
*/
public String checkAppointValue(List<Object> list ,int index1,int index2) throws Exception {
if (index1>=0&&index2>=0&&list.size()>=index1&&list.size()>=index2) {
//在这里判断两个值是否相同,如果有需要可以根据具体情况修改
//例如list.get(j).toString().trim().equals(list.get(i).toString().trim())
//可根据你的集合类型做下微调
if (list.get(index1)==list.get(index2)) {
return "Equal" ;
}else {
return "Not_Equal";
}
}else {
//参数不正确。
return "Bad_Parameter" ;
}
}
public void testListValue() throws Exception {
List<Object> list = new ArrayList<Object>() ;
String msg = checkAllListValue(list) ;
if (msg.equals("Equal")) {
//执行:相等时的方法。(你说的有一个方法不希望在这里执行)
}else if (msg.equals("Not_Equal")) {
//执行:不相等时的方法。(你说的只执行一次的方法。)
}else {
//参数错误 处理
}
}
/**
* 遍历判断
* @param list
* @return
* @throws Exception
*/
public String checkAllListValue (List<Object> list) throws Exception {
boolean flat = true ;
String str = "Not_Equal" ;
if (list!=null&&list.size()>0) {
for (int i = 0; i < list.size(); i++) {
if (flat) {
for (int j = 0; j < list.size(); j++) {
//在这里判断两个值是否相同,如果有需要可以根据具体情况修改
//例如list.get(j).toString().trim().equals(list.get(i).toString().trim())
//可根据你的集合类型做下微调
if (list.get(j)==list.get(i)) {
flat = false ;
str = "Equal" ;
break ; //如果有相同值,则跳出循环 返回 Equal 。
}
}
}else {
break ;
}
}
return str ;
}else {
return "Bad_Parameter" ; //如果List为空 则返回错误msg提示。
}
}
/**
* 根据指定值判断。
* @param list
* @param index1
* @param index2
* @return
* @throws Exception
*/
public String checkAppointValue(List<Object> list ,int index1,int index2) throws Exception {
if (index1>=0&&index2>=0&&list.size()>=index1&&list.size()>=index2) {
//在这里判断两个值是否相同,如果有需要可以根据具体情况修改
//例如list.get(j).toString().trim().equals(list.get(i).toString().trim())
//可根据你的集合类型做下微调
if (list.get(index1)==list.get(index2)) {
return "Equal" ;
}else {
return "Not_Equal";
}
}else {
//参数不正确。
return "Bad_Parameter" ;
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询