2014-03-13 40 views
0

我對這個有點新,但是?任何人都可以糾正我的第一個switch語句我不知道該用什麼表情來啓動的情況下:Switch Statement請幫我查看

和IM甚至不知道,如果起始聲明甚至正確

import java.io.*; 
    public class SwitchDemo { 
    public static void main(String[] args) { 


    BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
    String input= br.readLine(); 

    System.out.println("Press Enter"); 
    System.out.println("a.Hello: Asks the name of the user."); 
    System.out.println("b.Array: Input elements and search for a specified key and prints a  message."); 
    System.out.println("c.MagicSquare: Displays [7][7] magic square."); 
    System.out.println("d.Bubble Sort: Alphabetically sorts 20 employees using bubble sort."); 
    System.out.println("e.Selection Sort: Alphabetically sorts 20 employees using selection sort"); 
    System.out.println("f.Insertion Sort: Alphabetically sorts 20 employees using Insertion sort"); 
    System.out.println("g.Factorial: Run the Factorial application"); 
    System.out.println("h.Triangle: Run the Triangle application."); 
    System.out.println("i.MergeSort: Performs the mergesort of a two class databasse."); 
    System.out.println("j.Stack_1: Perform reversal of string."); 
    System.out.println("k.Stack_2: Perform Infix Notation"); 
    System.out.println("l.Postfix: Perform Postfix Notation"); 
    System.out.println("m.Linked List"); 
    System.out.println("n.Queue:"); 
    System.out.println("o.Exit:"); 

     switch (input) { 
      case a: 

      String usersName;  
      String upperCaseName; 

      TextIO.put("Please enter your name: "); 
      usersName = TextIO.getln(); 

      upperCaseName = usersName.toUpperCase(); 

      TextIO.putln("Hello, " + upperCaseName + ", nice to meet you!"); 


        break; 
      case b: 
     // Code for b execution here. Run array. 
        break; 
      case c: 
     // Code for c execution here. magicsquare. 
        break; 
      case d: 
     // Code for d execution here. Bubble sort. 
        break; 
      case e: 
     // Code for e execution here. selection sort. 
        break; 
      case f: 
     // Code for f execution here. insertion sort. 
        break; 
      case g: 
     // Code for g execution here. recursion. 
        break; 
      case h: 
     // Code for h execution here. mergesort. 
        break; 
      case i: 
     // Code for b execution here. stack1. 
        break; 
      case j: 
     // Code for b execution here. stack2. 
        break; 
      case k: 
     // Code for b execution here. link list. 
        break; 
      default: 
     System.out.println("Please input selection from a-o"); 
        break; 
     } 

    } 
} 
+0

你還沒有告訴我們你在做什麼。什麼是'a'?什麼是'b'? –

+0

你正在使用哪個版本的java? – Jabir

+0

@SotiriosDelimanolis信件的選擇是:你選擇一封信,然後其他程序將運行先生。 – user3409232

回答

1

正如其他人所說,使用

switch(input) { 
    case "a": 
     // do stuff 
     break; 
    case "b": 
     // do more stuff 
     break; 
} 

會工作。 又一個的事情,如果你是在Java 7(Java的版本)的工作,你應該能夠擺脫

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 

Scanner in = new Scanner(System.in); 
String input = in.nextLine(); 

至少對我來說是更換很容易使用。剛剛進口

import java.util.Scanner; 
+0

即時通訊有點與這位先生一起工作,謝謝,順便說一句,「a」已經在我的命令字符串[]上聲明,所以我可能不會使用它,因爲我仍在調整先生,即時通訊很抱歉作爲一個新手:( – user3409232

+0

我明白了,這只是一般用途,你可以在任何地方放任何東西,就你的情況而言,你可以放入你的東西。 – Evan

0

你沒有檢查的情況下爲字符串(聲明輸入作爲一個字符串)。您正在調用名爲a,b等變量。請嘗試將它們放入引號中,如case: "a"中所示。

1

幾個百分點這裏

case語句都是這樣的(預1.7)

char input = 'a'; 

switch (input) { 
case 'a': 
    break; 
default : 
    System.out.println("default"); 

} 

爲Java 1.7及以後你也可以打開字符串

String input = "a"; 

switch (input) { 
case "a": 
    printHelloUser(); 
    break; 
default : 
    System.out.println("default"); 

} 

void printHelloUser() { 
     String usersName;  
     String upperCaseName; 

     TextIO.put("Please enter your name: "); 
     usersName = TextIO.getln(); 

     upperCaseName = usersName.toUpperCase(); 

     TextIO.putln("Hello, " + upperCaseName + ", nice to meet you!"); 


} 

您可能還在閱讀她的輸入之前要先考慮用戶prompting

+0

提供一個使用字符串的例子,你的答案已經足夠完成upvote;) – Aarowaim

+0

哪裏會命令先生?喜歡你好的世界?格式上的任何示例先生?非常感謝 – user3409232

+0

@Aarowaim 7分鐘前已經在那裏。那一點是使用字符串。 –