在Java中,将`char`转换为`byte`数组可以通过以下几种方法实现:
1. 使用`String`类的`getBytes`方法:
String s = "1";byte[] b = s.getBytes();System.out.println(b); // 输出:1
2. 使用`Charset`类进行转换:
import java.nio.charset.Charset;import java.nio.ByteBuffer;import java.nio.CharBuffer;public class CharToByte {public static byte[] charToByte(char c) {byte[] b = new byte;b = (byte) ((c & 0xFF00) >> 8);b = (byte) (c & 0xFF);return b;}public static void main(String[] args) {char c = '1';byte[] byteArray = charToByte(c);for (byte b : byteArray) {System.out.println(b);}}}
3. 使用`CharsetEncoder`进行转换:
import java.nio.charset.Charset;import java.nio.charset.CharsetEncoder;import java.nio.ByteBuffer;public class CharToByte {public static byte[] charToByte(char c) {Charset cs = Charset.forName("UTF-8");CharBuffer cb = CharBuffer.wrap(new char[]{c});ByteBuffer bb = cs.encode(cb);return bb.array();}public static void main(String[] args) {char c = '1';byte[] byteArray = charToByte(c);for (byte b : byteArray) {System.out.println(b);}}}
以上方法都可以将单个`char`转换为`byte`数组。如果需要转换`char[]`数组,可以使用类似的方法,例如使用`CharsetEncoder`:
import java.nio.charset.Charset;import java.nio.charset.CharsetEncoder;import java.nio.ByteBuffer;public class CharArrayToByteArray {public static byte[] charArrayToByteArray(char[] chars) {Charset cs = Charset.forName("UTF-8");CharBuffer cb = CharBuffer.wrap(chars);ByteBuffer bb = cs.encode(cb);return bb.array();}public static void main(String[] args) {char[] chars = {'1', '2', '3'};byte[] byteArray = charArrayToByteArray(chars);for (byte b : byteArray) {System.out.println(b);}}}
这些方法可以帮助你在Java中实现`char`到`byte`数组的转换
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/65954.html