assert e instanceof BigInteger //断言,这个值是BigInteger类型 上面的示例中,是针对正整数。针对负整数也是一样的。...如果除法是精确的(即产生的结果可以在相同的精度和刻度范围内表示),则使用divide()方法执行BigDecimal除法,或者使用MathContext,其精度为两个操作数的最大值加上额外的10的精度,...** 9 instanceof Integer // 1_000_000_000 // 基础是long,所以将结果放入long中 // (虽然它可以适合整数) assert 5L...** -0.3f instanceof Integer // 1 //基数为整型,指数为负整型 //但结果将被计算为Double //(基数和指数实际上都转换为双精度值) assert...,指数是整型数 //但结果只能表示为Double值 assert 3.4f ** 5 instanceof Double // 454.35430372146965 assert
基本内置类型:编译器内置的基本类型,包括算数类型(字符、整型数、布尔值、浮点数)和空类型void 复合类型:基于其他类型定义的类型,包括数组、C风格字符串、指针、引用、C风格结构体(POD)和联合体(...实际开发中我们仅使用C++内置整型中的int,如果程序中需要大小不同的整型,那么: 在合适情况下,推荐用size_t和ptrdiff_t 我们可以认为int至少32位,如果需要使用64位整数,那么使用...int64_t 不要使用uint32_t等无符号类型,你应该使用断言来指出变量为非负数,混用有符号类型和无符号类型可能导致非预期的结果(见下文) 执行浮点数运算时使用double,因为float通常精度不够且双精度浮点数和单精度浮点数的计算代码相差无几...无符号短整型 unsigned short 2 长整型 long (signed long) 4 无符号长整型 unsigned long 4 双长型 long long 8 字符型 char...1 无符号字符型 unsigned char 1 单精度型 float 4 双精度浮点型 double 8 长双精度浮点型 long double 8 布尔型 bool 1 true, false
continue 继续下一次循环 xdata 外部数据存储器 default switch 语句中的默认分支 code 程序存储器(ROM) do do-while 循环 bdata 位寻址区域 double 双精度浮点型变量...double:用于定义双精度浮点型变量。 else:用于定义 if 语句的另一分支。 enum:用于定义枚举类型。 extern:用于声明变量在外部定义。 float:用于定义单精度浮点型变量。..._Noreturn:用于定义无返回值类型。 _Static_assert:用于定义静态断言。 _Thread_local:用于定义线程局部存储。...default switch 语句中的默认分支 default: break; do do-while 循环 do { /* code */ } while (condition); double 双精度浮点型变量...示例: do { /* code */ } while (condition); double 用于定义双精度浮点型变量。
null 空 基本类型 boolean 布尔型 基本类型 float 单精度浮点 基本类型 double 双精度浮点 类别 关键字 说明 包相关 import 引入 包相关 package 包 类别...进制之间的转换 十进制转二进制,除以2并取余 二进制转十进制,乘以2的次幂 变量 变量就是内存中的存储区域,该区域有自己的变量名和数据类型,如:int a = 1;未知数即变量,需要用如数学中的代号表示...存储区域可以在该类型中可以存储属于该类型的数据,同一类型的数据。...8 double 双精度类型为8 基本数据类型的自动转换 口诀:小可转大,大转小会失去精度 byte -> short,char -> int -> long float -> double...结语 本文主要讲解 Java语言基础-关键字,标识符,注释,常量和变量,运算符 下面我将继续对Java、 Android中的其他知识 深入讲解 ,有兴趣可以继续关注 小礼物走一走 or 点赞
(非 Java 实现)new新,创建static静态strictfp严格,精准synchronized线程,同步transient短暂volatile易失程序控制语句break跳出循环case定义一个值以供...switch 选择continue继续default默认do运行else否则for循环if如果instanceof实例return返回switch根据值选择执行while循环错误处理assert断言表达式是否为真...finally有没有异常都执行throw抛出一个异常对象throws声明一个异常可能被抛出try捕获异常包相关import引入package包基本类型boolean布尔型byte字节型char字符型double双精度浮点...float单精度浮点int整型long长整型short短整型变量引用super父类,超类this本类void无返回值保留关键字goto是关键字,但不能使用const是关键字,但不能使用null空
vA 80 12x neg-double vA, vB 对寄存器对 vB 存储的双精度浮点数求补并存入寄存器对 vA 81 12x int-to-long vA, vB 将寄存器 vB 中的整型数转换为长整型数...vB 中的整型数转换为双精度浮点数,并存入寄存器对 vA 84 12x long-to-int vA, vB 将寄存器对 vB 中的长整型数转换为整型数,并存入寄存器 vA 85 12x long-to-float...vA, vB 将寄存器对 vB 中的长整型数转换为单精度浮点数,并存入寄存器 vA 86 12x long-to-double vA, vB 将寄存器对 vB 中的长整型数转换为双精度浮点数,并存入寄存器对..., vB 将寄存器对 vB 中的双精度浮点数转换为整型数,并存入寄存器 vA 8b 12x double-to-long vA, vB 将寄存器对 vB 中的双精度浮点数转换为长整型数,并存入寄存器对...vCC 中的双精度浮点数,结果存入寄存器对 vAA af 23x rem-double vAA, vBB, vCC 将寄存器对 vBB 中的双精度浮点数和寄存器对 vCC 中的双精度浮点数进行模运算,
, 重点是下面这条. float是单精度浮点数,double是双精度浮点数....单精度与双精度什么区别 根据国际标准IEEE 754,任意一个二进制浮点数V可以表示成下面的形式: (-1)^s表示符号位,当s=0,V为正数;当s=1,V为负数。...对于32位的单精度浮点数,最高的1位是符号位s,接着的8位是指数E,剩下的23位为有效数字M。 对于64位的双精度浮点数,最高的1位是符号位S,接着的11位是指数E,剩下的52位为有效数字M。...浮点数转成内存存储 为了避免产生上面那种画马的跳跃,我们一小步一小步,看看浮点数据具体怎么在内存中存储的.双精度与单精度类似,这里我以单精度为例. 先将这个实数的绝对值化为二进制格式。...,而产生这种的差异的原因就是单精度浮点数小数位23位不足以存储所有二进制数(26位). ?
byte: byte 数据类型是8位、有符号的,以二进制补码表示的整数; 最小值是 -128(-2^7); 最大值是 127(2^7-1); 默认值是 0; byte 类型用在大型数组中节约空间,主要代替整数...short: short 数据类型是 16 位、有符号的以二进制补码表示的整数 最小值是 -32768(-2^15); 最大值是 32767(2^15 - 1); Short 数据类型也可以像 byte...double: double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数; 浮点数的默认类型为double类型; double类型同样不能表示精确的值,如货币; 默认值是 0.0d;...char: char类型是一个单一的 16 位 Unicode 字符; 最小值是 \u0000(即为0); 最大值是 \uffff(即为65,535); char 数据类型可以储存任何字符; 例子:char...package 包 boolean 布尔型 byte 字节型 char 字符型 double 双精度浮点 float 单精度浮点 int 整型 long 长整型 short 短整型 super 父类,
访问控制类 关键字 说明 private 私有的 ,只有当前类中的成员能访问到 protected 受保护的,只有当前类的成员与继承该类的类才能访问 public 公共的,所有用户都可以直接进行调用 default...implements 实现接口的关键字 interface 接口名 native 本地,原生方法 new 新创建的对象 static 定义静态对象 synchronized 线程 strictfp 严格,可以将一个类...和if搭配,用于执行if之外的条件 if 如果 for 循环 instanceof 实例 return 返回 switch 根据值选择执行 while 循环 错误处理 关键字 说明 assert 断言表达式是否为真...声明一个异常可能被抛出 try 捕获异常 包相关 关键字 说明 import 引入 package 包 基本类型 关键字 说明 boolean 布尔型 byte 字节型 char 字符型 double 双精度浮点...float 单精度浮点 int 整形 long 长整型 short 短整型 变量引用 关键字 说明 super 父类,超类 this 本类 void 无返回值 保留关键字 关键字 说明 goto
④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。...对长整型可以用"%lo"格式输出。同样也可以指定字段宽度用“%mo”格式输出。 ③x格式:以无符号十六进制形式输出整数。对长整型可以用"%lx"格式输出。...如果n>m,则自动取n值,即保证n个字符正常输出。 ⑦f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法: %f:不指定宽度,整数部分全部输出并输出6位小数。...System.out.println("单精度浮点型:"+d);/*单精度浮点型占32位存储空间,在一些 处理器上比双精度更快而且只占用双精度一般的空间,但是当值很大或很小的时候,它...,当需要保持多次反复迭代计算 的准确性时,或在操作值很大的数字时,双精度是最好的选择。
C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明。 1.itoa():将整型值转换为字符串。...用法gcvt(double,int,char*) 即(要转化的双精度浮点数,保留位数,目标字符串) ● ecvt():将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点。...(’\0’),如果双精度浮点数中的数字个数超过保留位数,低位数字被舍入。...C/C++语言提供了几个标准库函数,可以将字符串转换为任意类型(整型、长整型、浮点型等)。 ● atof():将字符串转换为双精度浮点型值。...● strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。
1.1双阶乘 双阶乘用“m!!”表示。 当 m 是自然数时,表示不超过 m 且与 m 有相同奇偶性的所有正整数的乘积。...自然数双阶乘比的极限 阶乘的逼近函数公式 对于正整数 2.如何解题 用input函数请用户输入一个整数,因为负数无阶乘,需使用户输入的数为自然数 根据阶乘的特点:n!...断言函数限定参数n大于或等于0,若大于或等于0,执行后面的代码,否则报错“AssertionError: 请输入自然数!...第3-5行: 设定递归的结束条件,当 n 为 0时,返回值为1,否则返回值为n * factorial(n - 1) 第8行: 定义变量a,用input函数使用户输入数字,int函数将其转换为整型 第9...左边的参数x是被累积的值,而右边的参数y是依次从序列中获取的值。
关键字 描述 abstract 抽象方法,抽象类的修饰符 assert 断言条件是否满足 boolean 布尔数据类型 break 跳出循环或者label代码段 byte 8-bit 有符号数据类型 case...字符数据类型 class 定义类 const 未使用 continue 不执行循环体剩余部分 default switch语句中的默认分支 do 循环语句,循环体至少会执行一次 double 64-bit双精度浮点数...int 32位整型数 interface 接口,一种抽象的类型,仅有方法和常量的定义 long 64位整型数 native 表示方法用非java代码实现 new 分配新的类实例 package 一系列相关类组成一个包...void 标记方法不返回任何值 volatile 标记字段可能会被多个线程同时访问,而不做同步 while while循环 Java注释 在Java的编写过程中我们需要对一些程序进行注释。...除了自己方便阅读,更为别人更好理解自己的程序,所以我们需要进行一些注释,可以是编程思路或者是程序的作用,总而言之就是方便自己他人更好的阅读。
变量就是指用来保存程序中某些特定的值,而且在程序运行期间其值可以发生改变,将其就称之为变量。 本质上变量可以当成是一个盒子,这个盒子可以用来存储一定的值,方便后期快速定位使用这个值。...双精度(double) 数据类型 所占空间 精度范围 表示方式 双精度 8个字节 取值为小数后15位 ...double B:单精度(float) 数据类型 所占空间 精度范围 表示方式 单精度 4个字节 取值为小数后...System.out.println(-10/0.0); //-Infinity 负无穷大 System.out.println(0.0/0.0); //NaN 极限(有值非数...2、第二种,赋值int数字,同时让char类型的变量可以参与四则运算(自动类型向上提升); 3、第三种,赋值Unicode码,形式为:char ch = '\u+4位16进制数'; 二、引用类型
文章目录 前言 一、类型断言 二、类型转换 三、指针类型转换 总结 ---- 前言 go语言中分为类型转换(type conversion)、类型断言(type assertion)和指针类型转换。...float32(b) 就是第二种强制类型转换, 普通变量类型int,float,string 都可以使用 type (a)这种形式来进行强制类型转换。...总结 golang中的强制类型转换有三种语法形式,分别是 类型断言,类型转换,指针类型转换,语法上类型断言和指针类型转换和Java比较像。 注意点:低类型转换为高类型,保证精度。...高类型转换为抵类型会丢失精度。具体的进度请看下面这张表。...类型名称长度零值说明bool布尔类型1false其值不为真即为假,不可以用数字代表true或falsebyte字节型10uint8别名rune字符类型40专用于存储unicode编码,等价于uint32int
泛型的本质是参数化类型 假定我们有这样一个需求:写一个排序方法,能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,该如何实现? 这种情况可以使用 Java 泛型。...java 中泛型标记符: E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型...:"); printArray(intArray); // 传递一个整型数组 System.out.println("\n双精度型数组元素为:"); printArray(doubleArray...编译代码,运行结果如下: 整型数组元素为: 1 2 3 4 5 双精度型数组元素为: 1.1 2.2 3.3 4.4 字符型数组元素为: j a v a l y y 有界的类型参数: 有时候,你会想限制那些被允许传递到一个类型参数的类型种类范围...该例子中的泛型方法返回三个可比较对象的最大值。
常量与变量 定义:在程序执行过程中,其值不发生改变的量称为常量,其值可改变的量称为变量。 在程序中,常量是可以不经说明而直接引用的,而变量则必须先定义后使用。...常量 在程序执行过程中,其值不发生改变的量 直接常量(字面常量):可以直接从字面值看出来。...浮点型变量的分类 类型 类型说明符 数的范围 字节 有效位 单精度 float 1.2E-38 ~ 3.4E+38 4 7位有效位 双精度 double 2.3E-308 ~ 1.7E+308 8 15...x,y; // x、y为双精度实数 long double q; // q为长双精度实数 浮点型数据的舍入误差 由于实型变量是用有限的存储空间存储的,因此能提供的有效数字总是有限的,在有效位以外的数字将被舍去...a=12345678900 b=12345678920 实际值: image.png 原因:一个单精度实型变量只能保证的有效数字是7位,7位后面的数字是无意义的,并不准确地表示该数。
(凡是自己可以起名的地方都叫标识符,都遵循标识符的规则) Java的命名规则: 1、标识符由字母、下划线”_”、美元符”$”或数字组成; 2、标识符应以字母、下划线、美元符开头; 3、Java标识符大小写敏感...,创建 static 静态 strictfp 严格,精准 synchronized 线程,同步 transient 短暂 volatile 易失 程序控制语句 break 跳出循环 case 定义一个值以供...循环 错误处理 assert 断言表达式是否为真 catch 捕捉异常 finally 有没有异常都执行 throw 抛出一个异常对象 throws 声明一个异常可能被抛出 try 捕获异常 包相关...import 引入 package 包 基本类型 boolean 布尔型 byte 字节型 char 字符型 double 双精度浮点 float 单精度浮点 int 整型 long 长整型 short...短整型 null 空 变量引用 super 父类,超类 this 本类 void 无返回值 保留关键字 goto 是关键字,但不能使用 const 是关键字,但不能使用 Java常量:用字符串标识,区分不同的数据类型
采样值 在 播放设备中 播放的 声音分贝数 大小 也是无关 的 , 在 手机中 播放 100 采样值 是 40 分贝 , 在 大功率 扬声器 中播放 100 采样值 可能就是 80 分贝 , 播放 100...采样值 的 分贝数 与 播放设备及参数有关 ; 4、采样值在播放设备中才有意义 这个 100 的采样值 , 拿在手里 没有任何作用 , 也听不到声音 , 只有在 播放环境 中 , 在 音响 / 扬声器...音频采样精度 , 就是 采样值 的位数 , 常见的采样位数有 : 8 位采样精度 : 使用 1 字节数据表示 单个音频采样 ; 这是早期的数字音频系统使用 8 位采样精度 , 每个采样点可以用 2^...该采样精度 提供了 2^{16} = 65536 不同的值来表示每个采样点 , 该精度可以提供相当高的音频质量 , 适用于大多数 音乐 / 电影 / 多媒体应用 ; 24 位采样精度 : 使用 3...Audio Workstation " , 中的浮点音频处理 ; 这种精度提供了 2^{32} = 4,294,967,296 ( 大约 43 亿 ) 个不同的值来表示每个采样点 , 几乎可以消除量化噪声
约-1.7×10-308~1.7×10308 长双精度实型(long double)16字节 约-1.2×10-4932~1.2×104932 没有严格要求的情况下,实型也包含整型...其中常用的有双精度实型(double),单精度实型(float)不是太常用。但是之前所说的整型(int)不能被双精度实型(double)和单精度实型(float)代替掉。...在使用中因为会将整数和小数搞混,整数虽然不会出现误差,但小数误差比较大。所以不能用单精度实型(float)代替整型(int)。...为了减小误差,所以就有取整位数更多的双精度实型(double),但是带来的后果是所占的存储空间是原来的2倍。所以也不能用双精度实型(double)代替整型(int)。...有兴趣的可以查阅相应的资料。 变量与常量 变量犹如x,一个未知的数值,可以为0,也可以为1等任何数。常量就是这些变量的数值,如1就是1,不能说它是0等任何数,汉字中的大写或繁体一除外,0也是这样。
领取专属 10元无门槛券
手把手带您无忧上云