作者pinball (飞肥匪狒)
站内java
标题Re: [J2SE] JAVA有没有办法做 circular shift left
时间Wed Aug 13 19:52:17 2008
※ 引述《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