Re: [J2SE] JAVA有沒有辦法做 circular shift left
※ 引述《tkcn (小安)》之銘言:
: ※ 引述《pinball (飛肥匪狒)》之銘言:
: : 就是將字元轉成BYTE型態 然後將最左邊的BIT移到最右邊去
: : 剩下的平移一格 EX: 11001010 10010101
: : 懇請各位高手也順便教教小弟怎麼把字元轉成BYTE 以及把BYTE轉成字元的方法
: : 先謝謝各位了
: 上一篇的推文記錯了,
: 誤把 >>> 記成 circular shift right,
: 所以請不要理會我 Orz
: 我目前並不知道 java 是否有 circular shift 的函式,
: 不過我自己會利用 bitwise or/and 和普通的 shift 來達成,
: 簡單的說,先將原先的 bit pattern 拆成兩段,
: 再將左邊那段移到最右邊,右邊那段同理,
: 最後利用 bitwise or 重新組成一個 pattern 即完成。
: 比較需要注意的是,
: 在 java 中 ">>" 是 singed shift right,
: 所以想要在 byte 做出 unsiged shift,
: 我的建議是先轉成比較大的變數吧。
根據我找了好一陣子的資料 JAVA似乎是沒有直接做CIRCULAR SHIFT的FUNCTION
所以我想問 究竟要怎麼把字元先轉成ASCII碼 然後再經由ASCII轉成二進位的方式
而且在做完CIRCULAR SHIFT之後還要再從ASCII碼轉成字元
想請問各位板大們 該怎麼做這之間的轉換呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.32.27
討論串 (同標題文章)