java if else控制语句

Strings="你好";ResultSetrs=operate.executeQuery("select*fromtable1wherekeyword='"+s+"'"... String s="你好";
ResultSet rs=operate.executeQuery("select * from table1 where keyword='"+s+"'");//在table1中找

if(rs.next()){
//在table1中找到了
System.out.println("找到了");
}else{
//如果在table1中没找到,在table2中找
rs=operate.executeQuery("select * from table2 where keyword='"+s+"'");
}else{
//如果在table2中没找到,在table3中找
rs=operate.executeQuery("select * from table3 where keyword ='"+s+"'");
}else{
//如果在table1和table2中都找不到
System.out.println("都找不到");
}
请问这个怎么改,不要说把查询语句拿出来,那面只是我的简化代码,查询语句是不能拿出来的
展开
 我来答
青鸟中关村专家
2015-10-13 · 知道合伙人软件行家
青鸟中关村专家
知道合伙人软件行家
采纳数:1734 获赞数:8440
就职于北大青鸟中关村,自2004年踏入北大青鸟这个行业,已经有11年工作经验和8年的培训经验,寓教于乐

向TA提问 私信TA
展开全部

    在现实中,有些时候的条件不是一个,而是一组相关的条件,例如将阿拉伯数字转换为中文大写,根据分数转换为对应的等级等,都是多条件的结构,在程序中为了 避免写多个if语句的结构,提供了一类专门的多分支语句,这就是if-else if-else语句。

1、语法结构

    if(条件1)
        功能代码1; 
    else if(条件2)
        功能代码2; 
    else if(条件3)
        功能代码3; 
    else
        功能代码; 

2、语法说明:
    1)else if是else和if两个关键字,中间使用空格进行间隔。
    2) 条件1到条件n都是boolean类型
    3)else if语句可以有任意多句
    4) 最后的else语句为可选
    5)如果功能代码部分不是语句块,也就是不用大括号,就只能写一句

3、执行流程

    当条件1成立时,则执行功能代码1;当条件1不成立且条件2成立时,则执行功能代码2;如果条件1、条件2都不成立且条件3成立,则执行功能代码3,依次类推,如果所有条件都不成立,则执行else语句的功能代码。

    下面是一个实现根据月份的值,输出该月份包含的日期数,2月份全部输出28,不考虑闰年的示例代码:

int month = 3; 
int days = 0; //日期数
if(month == 1){
    days = 31; 
}else if(month == 2){
    days = 28; 
} else if(month == 3){
    days = 31; 
} else if(month == 4){
    days = 30; 
} else if(month == 5){
    days = 31; 
} else if(month == 6){
    days = 30; 
} else if(month == 7){
    days = 31; 
} else if(month == 8){
    days = 31; 
} else if(month == 9){
    days = 30; 
} else if(month == 10){
    days = 31; 
} else if(month == 11){
    days = 30; 
} else if(month == 12){
    days = 31; 
}
System.out.println(days);
百度网友13eda02
2013-06-12 · TA获得超过778个赞
知道小有建树答主
回答量:1048
采纳率:77%
帮助的人:372万
展开全部
String s="你好";
ResultSet rs=operate.executeQuery("select * from table1 where keyword='"+s+"'");//在table1中找

if(rs.next()){
   //在table1中找到了
   System.out.println("找到了");
}else{
   //如果在table1中没找到,在table2中找
   rs=operate.executeQuery("select * from table2 where keyword='"+s+"'");
    if(rs.next()){   //如果在table2中没找到,在table3中找
       rs=operate.executeQuery("select * from table3 where keyword ='"+s+"'");
    }else{
       //如果在table1和table2中都找不到
       System.out.println("都找不到");
    }
}
起码要嵌套一次分支、不清楚你的//如果在table1和table2中都找不到 不应该是1~3吗
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
coclely
2013-06-12 · TA获得超过262个赞
知道小有建树答主
回答量:227
采纳率:100%
帮助的人:184万
展开全部
。。。
要用 if (){} else if(){} esle if (){} esle{} 这样的格式。
而不是直接就if(){}else{}else{}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一生无悔sofa
2013-06-12 · 超过31用户采纳过TA的回答
知道答主
回答量:96
采纳率:0%
帮助的人:66万
展开全部
你这个代码写的不对啊。
String s="你好";
ResultSet rs=operate.executeQuery("select * from table1 where keyword='"+s+"'");//在table1中找

if(rs.next()){
//在table1中找到了
System.out.println("找到了");
}else if(rs.next()){
//如果在table1中没找到,在table2中找
rs=operate.executeQuery("select * from table2 where keyword='"+s+"'");
}else if(rs.next()){
//如果在table2中没找到,在table3中找
rs=operate.executeQuery("select * from table3 where keyword ='"+s+"'");
}else{
//如果在table1和table2中都找不到
System.out.println("都找不到");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
易氏江湖
2013-06-12
知道答主
回答量:13
采纳率:0%
帮助的人:3.8万
展开全部
我想可以写个循环吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式