java byte/short/char补充(了解)】的更多相关文章

1.在数学运算中会自动提升数据类型为 int 2.在基本赋值中,若右册的常量不超过取值范围,javac 添加 强制转换,否则报错 3.若右册 含有 变量 而不是直接使用常量相加,编译报错 例子 public class test{ public static void main(String[] args){ byte a = 10; byte b = 5; byte c; c = a+b; System.out.println(max); } } a + b => int + int =>1…
部分内容转自:java 彻底理解 byte char short int float long double 首先说byte: 这段是摘自jdk中 Byte.java中的源代码: /** * A constant holding the minimum value a <code>byte</code> can * have, -2<sup>7</sup>. */ public static final byte MIN_VALUE = -128; /**…
计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用int(32位)来存字是可以的,将char型值赋给int型会自动类型转换. 所谓int为整形数 表示它显示的就是底层二进制表示的数字,而char为字符型就是它显示的不是底层二进制表示的,而是通过对照字符编码unicode16 来把这个底层二进制表示出来,int比char大,因此肯定可以用int表示汉…
转自:http://hi.baidu.com/%C6%F3%D2%B5%BC%D2%D4%B0/blog/item/825a4858d6248e8b810a181a.html   java byte与char互转原理-转   一.字节和unicode Java内核是unicode的,就连class文件也是,但是很多媒体,包括文件/流的保存方式是使用字节流的.因此Java要对这些字节流经行转化. char是unicode的,而byte是字节.Java中 byte/char互转的函数在sun.io的…
原文网址:http://www.xuebuyuan.com/988752.html java byte与其他数据类型的转换主要用于二进制数据的编码和解码,主要用于网络传输,读写二进制文件,java和c++服务器之间的数据通信等等 以下是总结的源码 /** * BYTE转INT * * @param b * @return */ protected int byteArrayToInt(byte[] b) { return (b[0] << 24) + ((b[1] & 0xFF) &l…
Java 有8中基本数据类型,分别是byte.int.long.char.float.double.boolean. 1.byte.char的简单介绍 有时候总是搞不清byte.char,所以就现在好好的整理一下: 一个byte型整数在内存中占8位,也就是一个字节. 表数范围:-128 --127 . (字符类型char 2个字节). Java 中整形常量有三种表示方式: 其中8进制的整数常量以0开头. 16进制的整数以0x或0X开头,10-15分别a-f开头(此处的a--f不区分大小写)来表示…
Java提供两种不同的类型:引用类型和原始类型(内置类型).Int是java的原始数据类型,Integer是java为int提供的封装类. Java为每个原始数据类型提供了封装类. 其中原始数据类型封装类有 boolean --> Boolean  c har --> Character byte --> Byte short --> Short int --> Integer long --> Long float --> Float double -->…
package basictype; /** * byte.char和String类型相互转换 */ public class CHJavaType { public static void main(String[] args) { String string = "abcd"; // String转char[] char[] chars = string.toCharArray(); for (char c : chars) { System.out.println(c); } /…
char转化为byte: public static byte[] charToByte(char c) {        byte[] b = new byte[2];        b[0] = (byte) ((c & 0xFF00) >> 8);        b[1] = (byte) (c & 0xFF);        return b;    } char[]转化为byte[]: char[] cChar=new char[5]{a,b,c,d,e};  byt…
  java byte数组与16进制间的相互转换 CreationTime--2018年6月11日15点34分 Author:Marydon 1.准备工作 import java.util.Arrays; /** * Byte[]与hex的相互转换 * @explain * @author Marydon * @creationTime 2018年6月11日下午2:29:11 * @version 1.0 * @since * @email marydon20170307@163.com */…
一.基本数据类型的特点,位数,最大值和最小值.1.基本类型:short 二进制位数:16 包装类:java.lang.Short 最小值:Short.MIN_VALUE=-32768 (-2的15此方)最大值:Short.MAX_VALUE=32767 (2的15次方-1)2.基本类型:int 二进制位数:32包装类:java.lang.Integer最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)最大值:Integer.MAX_VALUE= 214748…
一.分析基本数据类型的特点,最大值和最小值.1.基本类型:int 二进制位数:32包装类:java.lang.Integer最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)最大值:Integer.MAX_VALUE= 2147483647  (2的31次方-1)2.基本类型:short 二进制位数:16包装类:java.lang.Short最小值:Short.MIN_VALUE=-32768 (-2的15此方)最大值:Short.MAX_VALUE=327…
#编码与字符编码 (懂编码的建议直接跳过) 在计算机世界中,任何事物都是用二进制图片数字表示的,图片可以编码为JPG,PNG格式的字节流,音频,视频有MP3,MP4格式的字节流.这些JPG,MP3等都是一些众所周知的编码格式罢了,只要你 定义一个映射关系,可以正确地对文件进行编码解码,那么这就是一种编码格式.可能会有人认为一些文本文件是文本格式的,它们能用记事本直接打开,因此不是二进制格式的.这种说法并不正确,能打 开是大部分记事本默认的编码如GB2312,UTF-8,ISO等 都兼容了ASCI…
1:“字节”是byte,“位”是bit : 2: 1 byte = 8 bit : char 在Java中是2个字节.java采用unicode,2个字节(16位)来表示一个字符. 例子代码如下: public class Test { public static void main(String[] args) { String str= "中"; char x ='中'; byte[] bytes=null; byte[] bytes1=null; try { bytes = st…
项目中有段代码,一直让我疑惑不解,但我是个很会偷懒的人,只要拷贝来改改能用的代码,万万不会自己动手写,虽然一直有疑惑,也懒得搭理是怎么个原理. 直到今天,又要解析协议,又要动这个地方的代码,还是来盘他吧. 看下面这个flag的值,我一直想不明白的就是这个,short是两个字节的,取值范围 “-32768 (-2的15此方) -- 32767 (2的15次方-1)”,这个byte明明只取了第15位上的一个数,比如 0xF4 ,怎么就变成了负数-12,明明可以放下的,明明是244. 直到今天细细看了…
最简单的方法: 利用javax.xml.bind包下的DatatypeConverter printHexBinary public static java.lang.String printHexBinary(byte[] val) Converts an array of bytes into a string. Parameters: val - An array of bytes Returns: A string containing a lexical representation…
1. byte array -> char array Byte[] b=new byte[5]{0x01,0x02,0x03,0x04,0x05};  Char[] c=Encoding.ASCII.GetChars(b);  2. char array -> byte array Char[] c=new char[5]{a,b,c,d,e};  Byte[] b=Encoding.Default.GetBytes(c);  Char[] c=new char[5]{a,b,c,d,e};…
1.JAVA中,char占2字节,16位.可在存放汉字 2.char赋值 char a='a';  //任意单个字符,加单引号. char a='中';//任意单个中文字,加单引号. char a=111;//整数.0~65535.十进制.八进制.十六进制均可.输出字符编码表中对应的字符. 注:只能放单个字符. 3.char运算 char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值. 在JAVA中,对char类型字符运行时,直接当做ASCII表对应的整数来对待. 示例: c…
今天在测试直接写的文章: java byte[]数组与文件读写 时,想调用FileHelper类对字节数组以追加的方式写文件,结果无论怎样竟然数据录入不全,重新看了下文件的追加模式,提供了两种方式: 方式一: 字节数组写入文件(不追加) //将byte数组写入文件 public void createFile(String path, byte[] content) throws IOException { FileOutputStream fos = new FileOutputStream(…
今天面试被问到"Java中的char能存中文吗?",我回答有的字能有的字不能,结果被嘲笑了,不过我也忘了字符编码的相关知识所以也没能解释.晚上查了下资料,记录一下. 网上搜索这个问题,答案清一色都是能,毕竟随便写行代码都能清晰地证明可以: char c = '我'; 但是事实并不是那么简单,Java的char内部编码为UTF-16,请参考String编码(二) 证明JAVA的char编码为UTF-16 Java 的char用两字节存储,表示范围从 '\u0000' 到 '\uffff'…
Java Byte 的取值范围大家都知道(-128 ~ 127),那么-128 和 127 这两个数是怎么计算的呢? #大学知识回顾: 概念:负数的补码是该 数 绝 对 值 的 原 码 按 位 取 反 ,然 后 对 整个数 加 1 在计算机内,定点数有3种表示法:原码.反码和补码 [原码]就是前面所介绍的二进制定点表示法,即最高位为符号位,"0"表示正,"1"表示负,其余位表示数值的大小. [反码]表示法规定:正数的反码与其原码相同:负数的反码是对其原码逐位取反,但…
让我们每天都能看到自己的进步.老王带你打造最全的 Java 面试清单,认真把一件事做到最好. 本文是前文<Java 最常见的 200+ 面试题>的第二个补充模块,第一模块为:<Java 200+ 面试题补充 ThreadLocal 模块>. 1.Netty 是什么? Netty 是一款基于 NIO(Nonblocking I/O,非阻塞IO)开发的网络通信框架,对比于 BIO(Blocking I/O,阻塞IO),他的并发性能得到了很大提高.难能可贵的是,在保证快速和易用性的同时,…
1.java中的char描述了UTF-16中的一个代码单元,因此对于基本的多语言层面可以随意的用char表示 ;//int值只能在0到65535即0000到FFFF 对于其他16个代码级别(两个代码单元)则采用以下形式得到: ));//…
目录 1.概述 2.答疑 3.总结 1.概述 网上或书上都说是Java中的char占用2个字节,一直没有深入,直到接触了编码,才对此产生了疑问,今天来深入一下这个问题. 2.答疑 char在设计之初的时候被用来存储字符,可是世界上那么多字符,如果有1个字节,就意味着只能存储256中,显然不合适,而如果有两个字节呢,那么就可以存储2^16(65536)种,这个数量符合大多数国家的语言字符个数于是Java团队使用unicode作为编码,一个char作为2个字节来存储. 但是unicode只是一个标准…
1.JAVA中,char占2字节,16位.可在存放汉字 2.char赋值 char a='a';  //任意单个字符,加单引号. char a='中';//任意单个中文字,加单引号. char a=111;//整数.0~65535.十进制.八进制.十六进制均可.输出字符编码表中对应的字符. 注:只能放单个字符. 3.char运算 char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值. 在JAVA中,对char类型字符运行时,直接当做ASCII表对应的整数来对待. 示例: c…
有一行Java代码如下: String code1 = (String)qTable1.getValueAt(i, 0); 这是一个Java的图形界面获取表格中值的代码,其中qTable1.getValue(i, 0)是获取表格中i行0列的一个数据值,获取到的值是Short类型,但是我想让它变成我所需要的String类型,如果按照如上(String)强转的话,编译时不会报错,但是会造成运行时异常:java.lang.Short cannot be cast to java.lang.String…
java字符数组char[]和字符串String之间的转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 使用String.valueOf()将字符数组转换成字符串 void (){ char[] s={'A','G','C','T'}; String st=String.valueOf(s); System.out.println("This is : "+st); } >> This is : AGCT 使用.toCharArray()将字符串转换成字符数组…
  java byte数组与String互转 CreationTime--2018年7月6日14点53分 Author:Marydon 1.String-->byte[] 方法:使用String.getBytes(charset)实现 String website = "http://www.cnblogs.com/Marydon20170307"; // String-->byte[],并指定字符集 byte[] b = website.getBytes("ut…
Java byte类型转换成int类型时需要 & 0XFF的原因 假设有byte b  = -1; 那么b的二进制是:1111 1111. 如果将b直接转换为int类型,那么二进制是 1111 1111 1111 1111 1111 1111 1111 1111,这显然就不对了. 所以要与b进行&运算 0XFF的二进制是 0000 0000 0000 0000 0000 0000 1111 1111 那么运算之后到结果就是 0000 0000 0000 0000 0000 0000 111…
C#  byte 和 char 可以认为是等价的.但是在文本显示的时候有差异.   c# 使用的是unicode字符集,应该和为ascii相互转换 只能转换到字符的unicode编码,或者由unicode编码转换为字符 转换方法如一楼所写 字符变数字 char a='a'; int ua=(int)a;//字符变整数 a=(char)ua;//整数变回字符 ---------------------  char转化为byte: public static byte[] charToByte(ch…