2010-09-12 21 views
1

我正在爲我的編程類做一個加密和解密程序,但是我比團隊早了一年,所以我想通過使用我去年學到的東西來簡化事情。我決定使用樹圖。程序所做的是取得一個文件,讀取包含字母編碼加密數據的第一行。它的格式爲「A-> B」,「B-> C」,「C-> A」等,然後第2行爲空行,第3行爲消息。我用了reg。表達式刪除字符的我不需要從文本文件,映射到第一個字母的鍵,然後將這些值設置爲帶箭頭的字母。 (A是關鍵,B是價值)所以如果消息表示ABC,它將成爲BCA。我想知道,至於解密,如果有一種方法可以輕鬆地將鍵和值翻轉到輸入位置,A key = B val,它將交換到B key = A val。只是尋找比我目前對集合和迭代器所做的更簡單的方法。Java - 在一個映射中交換值和鍵?

回答

1

只是尋找一種比我目前對集合和迭代器做的更簡單的方法。

這是你可能做到這一點的唯一方法,是在一般的地圖的原因,可能有幾個鍵映射到相同的值,在這種情況下,就沒有辦法來自動確定哪些在結果圖中使用重複鍵。

+0

字母本身必須全部循環,所以如果A映射到B的東西都必須映射到A.所以我猜無論如何,我有最有效的方式,然後感謝! – Samich 2010-09-12 23:32:12

1

聽起來像是你想有一個雙向地圖,像番石榴BiMap