Java_数制
scyatcs
这个作者很懒,什么都没留下…
展开
-
Java中的数制
1、Java中的数值类型都是有符号数,有符号和无符号的区别是:有符号最高位是符号位,表示的可以是正数,也可以 是负数;无符号最高位是数值位,只能表示正数。2、在计算机中,整数在内存中是以补码形式存储的;正数的原码、反码和补码是相同的,而负数的原码、反码和补码 之间是有一定的转换规则的。原创 2013-11-22 16:46:31 · 641 阅读 · 0 评论 -
各种转换
public class BDUtils {/*** String -> Hex* * @param s* @return*/public static String stringToHex(String s) {String str = "";for (int i = 0; i int ch = s.charAt(i);String s4 =原创 2013-11-22 16:01:56 · 845 阅读 · 0 评论 -
为何与0xff进行与运算
为何与0xff进行与运算在剖析该问题前请看如下代码public static String bytes2HexString(byte[] b) { String ret = ""; for (int i = 0; i String hex = Integer.toHexString(b[ i ] & 0xFF); if (hex.length() == 1)转载 2013-04-20 21:58:49 · 1019 阅读 · 1 评论 -
十进制数向十六进制数转换的三种方法
第一种方法: Integer.toHexString( int i );第二种方法: private static String decimalToHex(int decimal) { StringBuilder sb = new StringBuilder(); do { int temp = decimal & 0xF; if原创 2014-01-17 10:39:27 · 1558 阅读 · 0 评论 -
浮点型(float和double)
public static void main(String[] arg0) { double c = 1.0 / 0.0; double d = 2.0 / 0.0; //true System.out.println(c == d); //true System.out.println(c == Double.POSITIVE_INFINITY);原创 2014-03-26 11:39:48 · 1787 阅读 · 0 评论 -
怎么用Integer.toHexString(int)得到byte类型的十六进制字符串形式?
在剖析该问题前请看如下代码public static String bytes2HexString(byte[] b) { String ret = ""; for (int i = 0; i String hex = Integer.toHexString(b[ i ] & 0xFF); if (hex.length() == 1) { hex = '转载 2013-11-22 17:03:39 · 17723 阅读 · 3 评论 -
为什么8位有符号数的范围为“-128 — +127”?
这是一个困惑了我几年的问题,它让我对现在的教科书和老师极其不满,从我N年前开始摸电脑时,就几乎在每一本C++教科书上都说,8位有符号的取值范围是-128~+127,为什么不是-127~+127呢,后来的java,int的聚值范围,再32位计算,-2^31 ~ +2^31-1,可是,却从来没有任何一本教科书或一个老师比我解释过这个问题。 原因没有在工作上或者是什么地方直接遇到它,所以我也一直忽略它,转载 2015-03-03 15:26:49 · 16318 阅读 · 7 评论