2015-11-05 38 views
1

我想寫一個解密輸入字符串的程序。它從文本輸入的每個部分選擇0,2,4,6,8等字符,並在解密輸出中反向顯示它。學習簡單的java字符串解碼/解密

輸入:bxoqb swi eymrawn yim
輸出:my name is bob

請記住,程序忽略的空間符號,並在每個單詞的開頭重複這個循環!

我在網上找不到任何不是基於更復雜的加密/解密系統的東西。首先,我從簡單的東西開始。

編輯:是的,我的問題是如何學習如何做到這一點?或者如果有人能教我一種解碼字符串的技巧?

+0

這很酷。有問題嗎? – 3kings

+0

解碼它只是編碼的反面。 – 3kings

+0

*它從文本輸入的每個部分選擇0,2,4,6,8等字符*並且您怎麼做?它看起來像在消息字符之間添加了隨機字符(反向)。你是如何選擇這些角色的? –

回答

0

僞代碼:

  1. 基於分割空間的字符串,並將其存儲在列表中。
  2. 迭代您的列表,獲取每個字符串(bxoqb),然後現在提取字符(bob)並保存它
  3. 按相反順序遍歷相同的列表。

希望它能幫助你開始。

+0

如何創建列表? – aheroafaked

+0

你可以參考下面的鏈接獲取更多信息http://beginnersbook.com/2013/12/java-arraylist/ –

0

下面的代碼是最直接的方法......

//代碼開始

public static void main(String[] args) { 
    String str = "bxoqb swi eymrawn yim"; 
    String ans = decryption(str); 
    System.out.println(ans); 
} 

public static String decryption(String str) { 
    String ans = ""; 
    String[] words = str.split(" "); 
    for (String s : words) { 
     for (int i = 0; i < s.length(); i += 2) { 
      ans = s.charAt(i) + ans; 
     } 
     ans = " " + ans; 
    } 
    return ans.trim(); 
} 

//代碼結束

希望它能幫助。