2012-12-31 42 views
0

我想製作一個接受字符串並加密的程序。我的字符切換軟件返回相同的答案?

在執行程序期間,它應該將字符串轉換爲char數組。然後,一個switch語句在數組中運行,用b替換,反之亦然。

但是,程序只是返回一樣的在開始!這裏是代碼

import java.lang.*; 
import java.util.Scanner; 


public class Program 
{ 

    public static void main(String args[]) 
    { 
     Scanner input = new Scanner(System.in); 
     String pw = input.next(); 
     char pwa[] = pw.toCharArray(); 

     for(char c : pwa){ 
      switch(c){ 
      case 'a': 
      c = 'b'; 
      break; 
      case 'b': 
      c ='a'; 
      break; 
      } 
     } 
     String convpw = new String(pwa); 
     System.out.println(convpw); 
    } 
} 

回答

5

你只是改變變量c,不pwac是您的本地環路。

你可以這樣做:

for (int i=0; i<pwa.length; i++) { 
    switch(pwa[i]){ 
    case 'a': 
     pwa[i] = 'b'; 
     break; 
    case 'b': 
     pwa[i] ='a'; 
     break; 
    } 
}