日期:2014-05-20  浏览次数:20924 次

是否可以在switch语句中嵌套if语句
本人是新手,刚学习JAVA,在一次简单编程中想知道是否可以在switch语句中嵌套if语句。
以下是一个简单的公交站点查询小程序,我的想法是先输入自己的起始地和目的地,然后程序自动给出经过的站点,在编程中遇见了一些小问题,switch语句判定first的模块中我能否加上if语句对last进行判定。
程序如下:
import java.lang.*;
import javax.swing.*;

public class j03030508 {
public static void main(String[] args){
String first=JOptionPane.showInputDialog(null,"去请输入你的起始地:");
String last=JOptionPane.showInputDialog(null,"去请输入你的目的地:");
String passstat="";
switch (first){
case "棠下":
passstat="棠下->";
System.out.println("棠下开车");
                        if(last=="棠下")
                            break;
case "学院":
passstat+="学院->";
System.out.println("学院到了");
                        if(last=="学院")
                            break;
case "上社":
passstat+= "上社->";
System.out.println("上社到了");
                        if(last=="上社")
                            break;
case "华景新城":
passstat+= "华景新城->";
System.out.println("华景新城到了");
                        if(last=="华景新城")
                            break;
case "师大暨大":
passstat+="师大暨大->";
System.out.println("师大暨大到了");
                        if(last=="师大暨大")
                            break;
case "石牌桥":
passstat+="石牌桥";
System.out.println("终点站石牌桥");
                        if(last=="石牌桥")
                            break;

}
System.out.println("你的旅程是:\n"+passstat);
}

以上程序在运行中得不出我想要的结果,想知道我的思路是否正确,sitch语句中能否这样嵌套if语句?请高手们指点!谢谢!
编程 JAVA switch

------解决方案--------------------
LZ   last=="石牌桥"  
字符串用 == 来比较要是能搞出你想要的结果就怪了。 
------解决方案--------------------
引用:
引用:Java code?123456789101112public String getLast(String last){    String res = "";    if(last!=""){        if(last.equals("华景新城")){            res = "华景新城";       ……