1. 负数为什么要用补码表示

    1. 可以将符号位和其它位统一处理
    2. 减法也可按加法来处理
    3. 另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃
  2. 正数:原码、反码、补码相同。
    负数:反码符号位不变化,其余位数取反,补码即为反码+1。
  3. 假设当前时针指向11点,而准确时间是8点,调整时间可有以下两种拨法:
        一种是倒拨3小时,即:11-3=8
        另一种是顺拨9小时:11+9=12+8=8
        在以模为12的系统中,加9和减3效果是一样的,因此凡是减3运算,都可以用加9来代替。对“模”12而言,9和3互为补数(二者相加等于模)。所以我们可以得出一个结论,即在有模的计量系统中,减一个数等于加上它的补数,从而实现将减法运算转化为加法运算的目的。
  4. 为了显示一个byte型的单字节十六进制(两位十六进制表示)的编码,请使用:

    Integer.toHexString((byteVar & 0x000000FF) | 0xFFFFFF00).substring(6)

    byteVar & 0x000000FF的作用是,如果byteVar 是负数,则会清除前面24个零,正的byte整型不受影响。(...) | 0xFFFFFF00的作用是,如果byteVar 是正数,则置前24位为一,这样toHexString输出一个小于等于15的byte整型的十六进制时,倒数第二位为零且不会被丢弃,这样可以通过substring方法进行截取最后两位即可。

  5. System.out.println(Integer.toHexString());//
    System.out.println(Integer.toHexString());//f
    System.out.println(Integer.toHexString());//
    System.out.println(Integer.valueOf("F", ));//16 //负整数时,前面输入了多余的 FF ,没有去掉前面多余的 FF,按并双字节形式输出
    System.out.println(Integer.toHexString(-).toUpperCase());//FFFFFFFE
    //实质上0xFF会像转换成0x000000FF后再进行位运算
    System.out.println(Integer.toHexString(- & 0xFF).toUpperCase());//FE
    System.out.println(Integer.toHexString(- & 0x000000FF).toUpperCase());//FE
  6. //注,FE输出时不会为-2,因为此时不会把FE看成负数,valueOf会把所有数字串看成正的
    System.out.println(Integer.valueOf("FE", ));//254
    //如果要输出-2,只能按以下形式输出
    System.out.println(Integer.valueOf("-2", ));//-2
    //所以要把 FE 看成负的话,只能在前面加上负号,但是这里输出还不是-2,
    //而是先计算Integer.valueOf("FE", 16),再在结果前加上负
    System.out.println(Integer.valueOf("-FE", ));//-254
  7. System.out.println(Integer.valueOf("-80", ));//-128
    System.out.println(Integer.valueOf("7fffffff", ));//2147483647
    //System.out.println(Integer.valueOf("80000000", 16));//不能运行,已注掉
    System.out.println(Integer.valueOf("-80000000", ));//-2147483648
  8. System.out.println(Integer.toBinaryString(-));//
    System.out.println(Integer.toBinaryString(- & 0xFF));//
    System.out.println(Integer.toBinaryString(- & 0x000000FF));//
    System.out.println(Integer.valueOf("", ));//2147483647
    //System.out.println(Integer.valueOf("10000000000000000000000000000000", 2));
    System.out.println(Integer.valueOf("-10000000000000000000000000000000", ));//-2147483648
    System.out.println(Integer.valueOf("", ));//
    System.out.println(Integer.valueOf("-11111110", ));//-254

java-整型数值 用 16进制转换、2进制转换-Integer.toHexString的更多相关文章

  1. java程序中默认整形值常量是什么类型的?如何区分不同类型的整型数值常量?

    java程序中默认整形值常量是什么类型的?如何区分不同类型的整型数值常量? 整数值默认就是int类型,只有在数值常量后面加“L”或“l”才表明该常量是long型

  2. 将int,bigint整型数值可逆转换字符串

    将 Int 和 BigInt 类型数值转换为字符串的可逆方法,可用于缩短网址或记录的ID转换等. 如: 9223372036854775807 => aZl8N0y58M7 class Conv ...

  3. Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型

    ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型 1.返回顶部 1. 整型数值类型(C# 参考) 2019/10/22 “整型数值类型”是“简单类型”的 ...

  4. 【C语言】字符串与整型数值之间的转换

    一.将字符串转化为对应的数值 /*============================================================================= # # F ...

  5. Java 字符串、数值与16进制相互转化

    字符串.数值与16进制相互转化 首先创建一个工具类: package c; public class DataUtils { /* * 字节数组转16进制字符串 */ public static St ...

  6. Java之戳中痛点 - (7)善用Java整型缓存池

    先看一段代码: package com.test; import java.util.Scanner; public class IntegerCache { public static void m ...

  7. java 整型相除得到浮点型

    public class TestFloatOrDouble { public static void main(String[] args) { Point num1 = new Point(84, ...

  8. Java整型与字符串相互转换

    >>>>>>>>>>>>>>>>>>>> 1如何将字串 String 转换成整数 ...

  9. Java整型与字符串相互转换(转)

    1如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([S ...

随机推荐

  1. jsDeliver+github使用教程,免费的cdn

    欢迎访问我的个人博客皮皮猪:http://www.zhsh666.xyz 前言:CDN的全称是Content Delivery Network,即内容分发网络.CDN是构建在网络之上的内容分发网络,依 ...

  2. 关卡界面中个人信息随解锁关卡的移动(CocosCreator)

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321 1.功能描述       在关卡很多的游戏里面,我们一般使用滑动来向玩家展示所有的关卡,为了清楚的让用户看到自己当前所在的关卡, ...

  3. RabbitMQ消息丢失问题和保证消息可靠性-消费端不丢消息和HA(二)

    继续上篇文章解决RabbitMQ消息丢失问题和保证消息可靠性(一) 未完成部分,我们聊聊MQ Server端的高可用和消费端如何保证消息不丢的问题? 回归上篇的内容,我们知道消息从生产端到服务端,为了 ...

  4. runnable和thread实现多线程的区别

    下面以典型的买票程序(基本都是以这个为例子)为例,来说明二者的区别. 首先通过继承Thread类实现,代码如下: class MyThread extends Thread{ private int ...

  5. React-native 关于 android真机 出现连不上服务器

    我们都知道使用RN开发移动端应用时,我们要在手机端运行程序,可以下载 expo 这个软件进行扫描二维码连接到开发的APP上 有时会有突然连不上之前连上过的应用,出现如下画面 首先保证你的电脑和你的手机 ...

  6. VMware虚拟机安装Linux系统详细教程

    VMware14虚拟机安装RedHad6系统步骤 redhat网盘资源:链接:https://pan.baidu.com/s/1GlT20vevqbZ9qTxsGH1ZzA 提取码:oh57 如果网盘 ...

  7. Numbers That Count POJ - 1016

    "Kronecker's Knumbers" is a little company that manufactures plastic digits for use in sig ...

  8. asp.net core系列 72 Exceptionless使用介绍

    一.Exceptionless介绍 Exceptionless专注于.net平台提供实时错误和日志报告.主要包括:错误通知.智能分组异常.详细错误报告堆栈跟踪.支持离线.UI查看重要错误和确定优先级. ...

  9. 解决hql无法使用mysql方法的问题——以date_add()为例

    一.前言 最近在做一个定时任务,具体为定时清理掉mysql中存储的,一个月前的数据.而在hql语句中,就需要调用mysql的date_add()方法. 但是在hibernate中,是不允许使用各个SQ ...

  10. 关于jstl和web.xml之间的版本问题

    jstl的版本1.2对应web.xml3.1版本 jstl的版本1.1对应web.xml2.3版本 (IDEA中默认创建的是2.3的web.xml,最好换成3.1版本的) web.xml模板: < ...