java八进制写法_Java中8进制和16进制的表示方法
由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决问题。
但,二进制数太长了。比如int 类型占用4个字节,32位。比如100,用int类型的二进制数表达将是:
0000 0000 0000 0000 0110 0100
面对这么长的数进行思考或操作,没有人会喜欢。因此,C,C++,以及java中 没有提供在代码直接写二进制数的方法。
八进制数的表达方法
如何表达一个八进制数呢?如果这个数是 876,我们可以断定它不是八进制数,因为八进制数中不可能出7以上的阿拉伯数字。但如果这个数是123、是567,或12345670,那么它是八进制数还是10进制数,都有可能。
所以规定,一个数如果要指明它采用八进制,必须在它前面加上一个0,如:123是十进制,但0123则表示采用八进制。这就是八进制数的表达方法。
现在,对于同样一个数,比如是100,我们在代码中可以用平常的10进制表达,例如在变量初始化时:
int a = 100;
我们也可以这样写:
int a = 0144; //0144是八进制的100;一个10进制数如何转成8进制,我们后面会学到。
千万记住,用八进制表达时,你不能少了最前的那个0。否则计算机会通通当成10进制。不过,有一个地方使用八进制数时,却不能使用加0,那就是我们前面学的用于表达字符的“转义符”表达法。
十六进制数的表达方法
如果不使用特殊的书写形式,16进制数也会和10进制相混。随便一个数:9876,就看不出它是16进制或10进制。
16进制数必须以 0x开头。比如 0x1表示一个16进制数。而1则表示一个十进制。另外如:0xff,0xFF,0X102A,等等。其中的x也也不区分大小写。(注意:0x中的0是数字0,而不是字母O)
以下是一些用法示例:
int a = 0x100F;
int b = 0x70 + a;
至此,我们学完了所有进制:10进制,8进制,16进制数的表达方式。最后一点很重要,10进制数有正负之分,比如12表示正12,而-12表示负 12,;但8进制和16进制只能用达无符号的正整数,如果你在代码中里:-078,或者写:-0xF2,编译器并不把它当成一个负数。
java八进制写法_Java中8进制和16进制的表示方法相关推荐
- java string 编码_java中GBK编码格式转成UTF8,用一段方法实现怎么做?
unicode是一种"编码",所谓编码就是一个编号(数字)到字符的一种映射关系,就仅仅是一种一对一的映射而已,可以理解成一个很大的对应表格 GBK.UTF-8是一种"编码 ...
- C++中如何表示2进制,8进制、16进制变量
1.C和C++都没有提供二进制数的表达方法. 2.C,C++语言中,如何表达一个八进制数呢? 如果这个数是 876,我们可以断定它不是八进制数,因为八进制数中不可能出7以上的阿拉伯数字.但如果这个数是 ...
- JAVA复习:8进制与16进制
一.八进制 每3位二进制作为一个单元,最小数是0,最大数是7,共8个数字,这就是八进制. 例如:97:01100001拆分: 01 100 001-> 1+4+1即 十进制为97的数值 ...
- [工具]-C语言中字符串的形式打印16进制数据
C语言中字符串的形式打印16进制数据. 这样写,输出更直观些 #define PRINT_BUF_MAX (32) #define TAG_STRING_MAX (32) static void pr ...
- Python中int、str、bytes相互转化,还有2进制、16进制表示,你想要的都在这里了
文章目录 前言 数据类型转化 int -> str 使用 str() 函数 使用 format() 函数 使用 hex() 转换成16进制形式 使用 bin() 转换成2进制形式 str -&g ...
- java实现2进制转16进制,16进制转2进制(通过查表法和强转实现)
1.数组的进制转换 package com.vnb.javabase;public class ArrayTest {//16进制数转二进制public static void toHex(int n ...
- JAVA 进制转换工具类 10进制转16进制 10进制转2进制 16进制转2进制 16进制10进制 2进制转10进制 2进制转16进制
进制转换的坑: 注意:使用Integer的方法转换出来的2进制字符串 最高位是没有补零的 ,java的Integer类的toBinaryString()方法转换出来的二进制字符串只会保留最高非零位以后 ...
- java 10进制转16进制带ox格式输出
摘自https://yq.aliyun.com/wenzhang/show_28512 java 10进制转16进制带ox格式输出 如 60(10进制) 输出 : 0x00,0x00,0x00,0x3 ...
- C# 中10进制、16进制及其ASCII码之间转化
C#的进制转换主要用在串口通讯时候 进制转换是人们利用符号来计数的方法.进制转换由一组数码符号和两个基本因素"基数"与"位权"构成. 基数是指,进位计数制中所采 ...
最新文章
- MonoRail学习笔记五:定制服务实现自定义功能
- 玩点深入的:Java 虚拟机内存结构及编码实战
- Ubuntu 12.10中的8个新功能,Quantal Quetzal
- 企业实战_01_Redis下载/安装/运行/停止
- 如何配置yum源,并安装FTP服务器
- Codeforces Round #257 (Div. 2) C. Jzzhu and Chocolate
- 2.卷1(套接字联网API)---传输层:TCP,UDP 和 SCTP
- 基于verliog的异步模10计数器(含模块代码以及测试代码)
- 有替代CV520国产非接触式读写器读卡芯片CI520
- 一个由“2020年1月7日 京东出现的重大 Bug 漏洞“引起的思考......
- 推荐一个有效清理电脑桌面广告、流氓软件的方法
- 【古曲】流水-古琴曲
- 资源网址合集的合集,上千个链接!
- 生产注意事项(分片集群)
- 如何创建java project
- MongoDB4.4.2安装记录及无法启动踩坑
- spark使用supervisor守护进程
- 我有一个梦,袁隆平!
- [心情故事]一九九九年的年终工作总结——318冒险日志之初心者の道场
- 计算机原理【七】之 输入输出系统