精华内容
下载资源
问答
  • 十进制:除了数字0,不能以0作为其他十进制数的开头。如120、0、-127。八进制:必须以0开头。如0123(转换为十进制数为83)、-0123(转换为十进制数为-83)。十六进制:必须以0X或0x开头。如0x25(转换为十进制数是37)、0...

    1、整数型:

    整数型可以是正数,也可以是负数。

    整型数据在Java程序中有3种表示形式,分别为十进制、八进制和十六进制。

    十进制:除了数字0,不能以0作为其他十进制数的开头。如120、0、-127。

    八进制:必须以0开头。如0123(转换为十进制数为83)、-0123(转换为十进制数为-83)。

    十六进制:必须以0X或0x开头。如0x25(转换为十进制数是37)、0Xb01e(转换为十进制数是45086)。

    整数数据根据所占内存大小的不同,可分为byte、short、int和long 4种类型,他们具有不同的取值范围。

    int x;//定义int型变量x

    int x,y;//定义int型变量x、y

    int x = 450,y = -462;//定义int型变量x、y并赋给初值

    在定义变量时要注意变量的取值范围,超出相应范围就会出错。

    例:在项目中创建类Number,在主方法中创建不同数值型变量,并将这些变量相加,将和输出。

    public class Number{          //创建类

    public static void main(String[]args){     //主方法

    byte mybyte = 124;         //声明byte型变量并赋值

    short myshort = 32564;        //声明short型变量并赋值

    int myint = 45784612;        //声明int型变量并赋值

    long mylong = 46789451;        //声明long型变量并赋值

    long result = mybyte + myshort + myint + mylong; //获得各数相加后的结果

    System.out.println("结果为:"+ result);     //将以上变量相加的结果输出

    }

    }730af95af29b83a963755f29f5189d44.png运行结果

    2、浮点型:

    浮点型表示小数部分的数字。

    Java中的浮点型分为单精度浮点型(float)和双精度浮点型(double),他们的取值范围各不相同。

    一般情况下小数都被看做double型,若使用float型小数,则需要在小数后面添加F或f。可以使用后缀D或d来明确表明这是一个double类型数据,不加d不会出错,但声明float型变量时如果不加f,系统会认为变量是double类型,从而出错。

    例:

    float f1 = 13.23f;

    double d1 = 4562.12d;

    double d2 = 45678.1564;

    2、字符型:

    char型

    字符类型(char)用于存储单个字符,占用16位(两个字节)的内存空间。在定义字符型变量时,要以单引号表示,如‘s’表示一个字符,而“s”则表示一个字符串,虽然只有一个字符,但由于使用双引号号,它仍然表示字符串,而不是字符。

    使用char关键字可定义字符变量,例:

    char x = 'a';

    由于字符a在unicode表中的排序位置是97,因此允许将上面的语句写成;

    char x = 97;

    例:在项目中创建类Gess,编写如下代码,实现将unicode表中某些位置上的字符以及一些字符在unicode表中的位置在控制台上输出。

    public class Gess{                              //定义类

    public static void main(String[] args) {    //主方法

    char word = 'd',word2 = '@';            //定义char型变量

    int p = 23045,p2 = 45213;               //定义int型变量

    System.out.println("d在unicode表中的顺序位置是:" + (int)word);

    System.out.println("@在unicode表中的顺序位置是:" + (int)word2);

    System.out.println("unicode表中第23045位是:" + (char)p);

    System.out.println("unicode表中第45213位是:" + (char)p2);

    }

    }238a9c894d92a49e00961f32001063dc.png

    转义字符

    转义字符是一种特殊的字符变量,它以反斜杠“\”开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”。例如,printf函数的格式串中用到的“\ln”就是一种转义字符,意思是“回车换行”。

    java中的转义字符及其含义:

    \ddd 1~3位八进制数据所表示的字符,如\123

    \uxxxx 4位十六进制数据所表示的字符,如\u0052

    \t  垂直制表符,将光标移到下一个制表符的位置

    \r  回车

    \n 换行

    \b 退格

    \f  换页

    将转义字符赋值给字符变量是,与字符常量值一样需要使用单引号。例:

    char c1 = '\\';      //将转义字符‘\\’赋值给变量c1

    char char1 = '\u2605';    //将转义字符‘\u2605’赋值给变量char1

    System.out.println(c1);    //输出结果\

    System.out.println(char1);   //输出结果★

    3、布尔型

    布尔类型又称逻辑类型,通过关键字boolean来定义布尔类型变量,只有true和false两个值,分别代表布尔逻辑中的‘真’和‘假’。

    布尔值不能与整数类型进行转换。

    布尔类型通常被用在流程控制中,作为判断条件。

    boolean b;     //定义布尔类型变量b

    boolean b1,b2;    //定义布尔类型变量b1,b2

    boolean b = true;   //定义布尔类型变量b,并赋初值位true

    展开全文
  • 一般是十进制数,什么都不用加 二进制数0b开头(逢二进一) 八进制数以0开头 十六进制以0x开头,0-9,A代表10,B代表11,C代表12D13 共同点:都有基数,二进制基数是2,八进制基数是8,十进制基数是10,16进制基数是16...

    一般是十进制数,什么都不用加
    二进制数0b开头(逢二进一)
    八进制数以0开头
    十六进制以0x开头,0-9,A代表10,B代表11,C代表12D13

    共同点:都有基数,二进制基数是2,八进制基数是8,十进制基数是10,16进制基数是16
    各个进制转换为10进制就是基数*位次幂
    十进制转为二进制,除二求余法,从下往上读。
    十进制转为八进制,除八求余法,从下往上读。
    十进制转为16进制,除16求余法,从下往上读。
    其他进制相互转可以先转为十进制,再转为相应的进制。

    二进制0与二进制负数
    最高位表示符位号,0正1负
    这里分为原码(除二求余发得到的就是原码)
    反码:原码取反就是反码,0-1,1-0
    补码:负数用补码表示,最高位符号位(0正1负) 其余取反。然后+1(逢二进一)

    二进制负数如何转为十进制
    符号位不变,其他位取反,然后加1。

    二进制的位运算
    1.& 与运算,遇0则0
    2.| | 或运算,与1则1
    3.~ 取反运算。0-1,1-0
    4.^ 异或运算不进制加法
    5>>右移 补符号位,0补0,1补1
    6.<<左移 补0
    7.>>>无符号右移 补0

    展开全文
  • 不过这样常常会让数字看起来“过长”,例如十进制的 255 使用二进制表示为 11111111,因此,在C语言程序开发中,为了程序员阅读代码的方便,需要逐位操作变量时,常常使用十六进制。0xFF 看起来可比 0b11111111 直观...

    C语言允许程序员逐位操作变量,此时,最直观的数字表示方式自然是二进制。不过这样常常会让数字看起来“过长”,例如十进制的 255 使用二进制表示为 11111111,因此,在C语言程序开发中,为了程序员阅读代码的方便,需要逐位操作变量时,常常使用十六进制。0xFF 看起来可比 0b11111111 直观多了。

    6d0628a6d17445a7b6d516a83eaf163a.png

    在C语言中,为什么十六进制的数字前缀用 0x 呢?

    在C语言中,为什么十六进制的数字前缀用 0x 呢?

    在C语言中,十六进制的数字常常以 0x 或者 0X 前缀开头,这是印在很多程序员骨子里的东西。一个有趣的问题是,为什么十六进制数字以 0x 开头呢?这样做有什么历史渊源或者特别的好处吗?

    联想一下:C语言中的八进制是以前缀“0”开头的,例如 04524 就表示一个八进制数字,它等于十进制的 2388。现在想象一下,怎样表示十六进制数字呢?能像汇编那样,在数字尾部添加后缀“h”吗?例如,80h 表示十六进制的 80(它等于十进制的 128)。

    不幸的是,十六进制数字还有 ABCDEF 字符,如果在某段C语言代码中,出现了字母开头的数字,例如 F0h,C语言编译器是将其解释为变量呢?还是数字呢?因此这样做并不是一个好的选择。

    9c3527bd71bd7229077b83d105c7d205.png

    这样做并不是一个好的选择

    类似的,还有将 h 放在数字前面,或者 x 放在数字前面表示十六进制,也会带来同样的问题。

    事实上,早在上世纪 60 年代,最流行的编程数字系统是十进制和八进制,那个时候的机器中每字节的位数是不确定的,有的机器中每字节有 12 位,还有 24 位,36 位的,可以很好地被 3=log2(8)整除。

    5000575ddb2d7cfea726f6311795b0f7.png

    使用 0 前缀表示八进制数字

    BCPL 语言使用符号 8 1234 表示八进制数字,后来 Ken Thompson 根据 BCPL 语言创立了 B 语言,他修改了这一表示方法——使用 0 前缀表示八进制数字,这样的改进带来了一系列好处:

    • 对于编译器来说,整型常量总是可以由单个标记(token)组成。
    • 编译器仍然可以准确的识别出这是一个数字。
    • 编译器可以立即识别这是八进制数字。
    • 00005 和 05 是相等的。
    • 不需要使用特殊字符(例如1234表示)。

    后来 Thompson 从 B 语言创立C语言时,保留了这一特性。后来发现十六进制数字用起来很方便,选择了 0x 作为十六进制数字的前缀。

    小结

    简单来说,十六进制的前缀 0x 或者 0X 中的 0 是用于告诉编译器这是一个数字,这有一点点历史渊源在里面,也有一些好处。而 x 则可以认为是任意选择的符号(hexcimal)了。

    0ca3a84d21009e50277b5da0c740bbc0.png

    点个赞再走吧

    欢迎在评论区一起讨论,质疑。文章都是手打原创,每天最浅显的介绍C语言、linux等嵌入式开发,喜欢我的文章就关注一波吧,可以看到最新更新和之前的文章哦。

    未经许可,禁止转载。

    展开全文
  • 二进制以0b或者0B开头可用符号0、1负数在前面加符号-正确的值:0x10、0X11、-0x11错误的值:0x12需要注意的是...正确的值:01234567、0123、0777、-555错误的值:088十进制无需开头的前缀可用符号0、1、2、3、4、...

    二进制

    以0b或者0B开头

    可用符号0、1

    负数在前面加符号-

    正确的值:0x10、0X11、-0x11

    错误的值:0x12

    需要注意的是这里0b或者0B开头表示的只是进制,而不是说该常量是byte类型,千万不要搞混了

    八进制

    以数字0开头

    可用符号0、1、2、3、4、5、6、7

    负数在前面加符号-

    正确的值:01234567、0123、0777、-555

    错误的值:088

    十进制

    无需开头的前缀

    可用符号0、1、2、3、4、5、6、7、8、9

    负数在前面加符号-

    正确的值:1234567890、123、0777、-10

    错误的值:088

    十六进制

    以0x或0X开头

    可用符号0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f(或A、B、C、D、E、F)

    负数在前面加符号-

    正确的值:0x1234567890abcdefL、-0X1234567890ABCDEFL、0x123

    错误的值:0x123ghi

    示例

    public class Test5 {

    public static void main(String[] args) {

    System.out.println("二进制常量10:" + 0b1010);

    System.out.println("二进制常量-10:" + -0b1010);

    System.out.println("八进制常量10:" + 012);

    System.out.println("八进制常量-10:" + -012);

    System.out.println("十进制常量10:" + 10);

    System.out.println("十进制常量-10:" + -10);

    System.out.println("十六进制常量10:" + 0xa);

    System.out.println("十六进制常量-10:" + -0xa);

    }

    }

    输出结果为

    二进制常量10:10

    二进制常量-10:-10

    八进制常量10:10

    八进制常量-10:-10

    十进制常量10:10

    十进制常量-10:-10

    十六进制常量10:10

    十六进制常量-10:-10

    展开全文
  • 二进制数0b0010对应的十进制数是2,为什么呢? 因为在1的位置对应的是2,如下: 0*8+0*4+1*2+0*1=2 同理0b1111对应的是15: 1*8+1*4+1*2+1*1=15 那么0b00000000怎么对应呢? 因为二进制数逢二进一,从右向左是2的...
  • 0x是16进制的前缀,H是16进制的后缀 都是表示十六进制数,意义上没有什么区别,完全相等。...除表示正负的符号外,以1~9开头,由0~9组成是十进制。 1. 二进制数中只有两个字符0和1 2.八进制:以0开头,由0.
  • 0x是16进制的前缀,H是16进制的后缀 ...在C语言里,整数有三种表示形式:十进制,八进制,十六进制。 其中以数字0开头,由0~7组成的数是八进制。以0X或0x开头,由0~9,A~F或a~f 组成是十六进制。除表示正负...
  • 不过这样常常会让数字看起来“过长”,例如十进制的 255 使用二进制表示为 11111111,因此,在C语言程序开发中,为了程序员阅读代码的方便,需要逐位操作变量时,常常使用十六进制。0xFF 看起来可比 0b11111111 直观...
  • 先将一个十进制的整数转换成2进制的数;例如十进制的90 根据这个过程我们就得到了5A,那么根据十六进制的开头用前缀0x 90的十六进制0x5A (小写a大写A都可以) 发散: 1、为什么十六进制用4个二进制位表示嘛? ...
  • 进制表示

    2015-07-04 10:47:37
    0x开头表示十六进制; 0开头表示八进制; 什么都没有表示十进制
  • 不过这样常常会让数字看起来“过长”,例如十进制的 255 使用二进制表示为 11111111,因此,在C语言程序开发中,为了程序员阅读代码的方便,需要逐位操作变量时,常常使用十六进制。0xFF 看起来可比 0b11111111 直观...
  • python进制

    2019-08-07 11:55:26
    进制就是进制位,是被规定好的一种进位方法,比如:十进制逢十进一常见的进制:二进制【0~1】,十进制【0~9】,八进制【0~7,用数字0开头】,十六进制【0~9,a~f或者A~F,用0x或者0X开头】生活中常用是十进制,但是...
  • 进制表示法

    2020-12-29 19:32:05
    二进制:后面加B的,例如:1111B等于二进制数15 八进制:0开头的整数是8进制,就是0开头不做处理默认是八进制数,如:007 十进制:后面什么都不加时,默认十进制 十六进制:后面加了H,表示为0x的.
  • 二进制0b,八进制0,十进制,十六进制0x 二进制以0b开头。其他同理. int int2 = ob10; int int8 = 010; int int10 = 10; int int16 = 0x10; //输出结果 ; //int2 = 2; //int8 = 8; //int10 = 10; //int16 = 16; 二...
  • 十进制 七进制:0~6 十二进制:0~11 百进制 千进制 计算机中的二进制 二数制:”莱布尼兹“发明 为什么采用二进制:电路简单,开代表“1”,关代表“0”。 将10个电路开关组合在一起,就是1024。 * 四种进制说明 ...
  • 进制 概述

    2019-12-01 16:53:35
    二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。 B:不同进制表现同一个数据的形式特点 进制越大,表现形式越短 不同进制数据的表现形式: A:二进制的数据表现形式 由...
  • 文章作者:头条IT刘小虎,本文经作者授权发布,未经授权禁止转载!...联想一下:C语言中的八进制是以前缀“0”开头的,例如04524就表示一个八进制数字,它等于十进制的2388。现在想象一下,怎样表示十六进...
  • 文章作者:头条IT刘小虎,本文经作者授权发布,未经授权禁止转载!...联想一下:C语言中的八进制是以前缀“0”开头的,例如04524就表示一个八进制数字,它等于十进制的2388。现在想象一下,怎样表示十六进...
  • 进制之间的转换

    2021-04-02 16:57:36
    十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。 1. 2二进制、八进制、十进制和十六进制 对于整数,有四种表示方式: 二进制:0与1,满2进1,以0b或0B开头(字母B大小写...
  • C语言 进制转换

    2016-01-12 19:32:42
    十进制、二进制、八进制、十六进制 3.进制数字进位方法 十进制 0、1、2、3、4、5、6、7、8、9 逢十进一 二进制 0、1 逢二进一 书写形式:需要以0b或者0B开头,比如0b101 八进制 0、1、2、3、4、5、6、7 逢八进一 书写...
  • 九、进制转换

    2019-09-25 22:22:33
    什么是进制 进制其实就是进位制度,规定好的进位方法,列如:十进制是逢十进一,二进制是逢二进一 a.常见的进制:十进制【0~9】,二进制【0~1】,八进制【0~7,用数字0开头】,十六进制【0~9,a~f或者A~F,用0x或者...
  • 不同编译环境可能会有不同(有些编译器可能不支持某些前后缀的转换)但一般来讲:1.0B 表示二进制的前缀 ... 十进制的后缀 大家常见的数字不就是十进制数吗 怎么想的 没有前缀也没有后缀 就是数字表示多少就是多少4....
  • 进制、内存分析

    2015-12-01 22:19:00
    汉字:十一 十进制:11 二进制:1011 八进制:13 多种进制:十进制、二进制、八进制、十六进制。也就是说,同一个整数,我们至少有4种表示方式 软件开发,肯定要了解这个 2、二进制 1> 特点:只有0和1,逢2进...
  • 进制小数

    2019-04-05 22:01:25
    ”你一定会问,这很明白,就是以三为基(二进制数以2为基,而十进制数则以10为基)的小数。 输入 有理数的值都是在0与1之间的,每个有理数都由一个分子和一个分母表示,分子与分母之间隔着一个斜杠。有理数的个数...
  • 十六进制颜色

    2017-03-08 09:58:50
    第一,16进制颜色代码理论知识 很多友友不知道那些数字是什么意思?没关系,且看下文。16进制颜色代码以0、1、2、3、4、5、6、7、8、9、A、B、 C、D、E、F共16位组成。...FF:即十进制的R(红)=255,
  • 10-C语言进制和位运算

    2018-08-30 16:53:00
    进制基本概念 ...十进制、二进制、八进制、十六进制 进制书写的格式和规律 十进制 0、1、2、3、4、5、6、7、8、9 逢十进一 二进制 0、1 逢二进一 书写形式:需要以0b或者0B开头,例如: 0b101 八进制 0...
  • 文章目录定义常用进制二进制介绍为什么使用原码、反码、补码进制之间的转换二进制转十进制二进制转八进制二进制转十六进制二进制转十六进制 定义 进制也就是进位计数制,是人为定义的带进位的计数方法。 十进制是逢...
  • C: 十进制的数据表现形式 由0,1,…9组成。整数默认是十进制的 D: 十六进制的数据表现形式 由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头 3.原码反码补码 A:为什么要学习原码,反码,补码? 计算机在进行数据之间的...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 169
精华内容 67
关键字:

十进制什么开头