double类型几位小数_学习大数据培训课程java基础系列教程:(2)数据类型和运算符... - Go语言中文社区

double类型几位小数_学习大数据培训课程java基础系列教程:(2)数据类型和运算符...


一、常量与变量

直接量

生活中用到的数值,例如:

整数数值:1,23,454 等;

小数数值:3.14,2.3e4 等;

字符型数值:‘a’,‘b’ 等;

布尔型数值:用来表示真假值,true 、false。

String类型:用双引号括起来的多个字符序列,“move all", ”哈哈“。

null类型:null

变量:是一个保存数据的内存区域的名字。系统在变量定义时为其分配内存空间。

java语言是个强类型语言,所有变量必须显示声明类型。

当数据不确定时,应用。

声明变量语法:

3c0ef7b49c09f6e51b90edcbade54a2a.png

ype:数据类型

varName:变量名

如:int i;

两种变量声明方式:

7a3a8131cc463b6120c8e68c5babf062.png
ded3f4fbd080d22012e1a4eb5a99d7f1.png

常量:代表程序运行过程中不能改变的值,也就是说,第一次赋值后,不能再赋值。

常量一般都大写

声明常量的语法:

1
final type varName;

0bac545c9bbfb1a1158c187dfa10c0d5.png

所有常量、变量必须先声明,后使用

二、变量分类

按作用域:成员变量和局部变量 ——讲对象的时候讲

局部变量

代码块内有效

代码块 {}

4a18bc1433c0758b1fd6624841aa9f2b.png

方法体内有效 —— 讲方法的时候讲

按数据类型:

基本数据类型:包括整形(byte、short、int、long)、浮点型(float、double)、布尔类型(boolean)、字符型(char)

引用数据类型:包括类、接口、数组类型以及空类型

26f7eaaa4f1e1994e135d9a4e6050940.png

三、基本数据类型

整数型:包括字节型(byte),短整型(short),整型(int),长整型(long), 它们有符号整数

浮点型:包括浮点型(float),双精度型(double),它们代表有小数精度要求的数字

字符型:包括字符型(char),它代表字符集的符号,例如字母和数字

布尔型:包括布尔型(boolean),它是一种特殊的类型,表示真/假值

(一)整数类型

ecb90407ec9fae2bde2797c0efac74cd.png

bit:位

一个二进制数据0或1,是1bit;

byte:字节

一个字节等于8位。

其中定义long类型时,要在整数常量后增加L或l,建议用L,容易区分,如

long value = 103432544354356L;

73f68de6b9dc7086b4785b438ad0fc40.png

1、整数字面量表示

十进制:默认的,逢10进1

如:int i= 125;

八进制:整数之前加数字0来表示,逢8进1

如:int j = 071;

十六进制:整数之前加“0x”或“0X”,其中10~15分别以a~f表示(不区分大小写),逢16进1

如:int i = 0xa;

二进制(新加的):整数之前加“0b”或“0B”,逢2进1

如:int j = 0b101;

十进制转二进制方法

这是一个连续除以2的过程:把要转换的数,除以2,得到商和余数,将商继续除以2,直到商为0。最后将所有余数倒序排列,得到数就是转换结果。

如:十进制的6转成二进制 110

05cde36832d48073ad085bbf0ce70209.png

二进制加法0b11+0b10 = 0b101,加法方式逢二进一

十进制的30,转换成二进制、八进制、十六进制

047c664c85bda80ca84365b9b2bfdf80.png

二进制转十进制方法

用二进制数值乘以2的幂次依次相加

如:二进制110转换成十进制6

20 0 + 21 1 + 22 * 1 = 0 + 2 +4 = 6

931e1ca3315b82b02887b8eb7fc51821.png

八进制、十六进制与十进制互转原理与二进制一样

将之前十进制的30 转换成其他进制,再转换回十进制

代码示例:

8b79ab6286e5199303aaded26bc1b4cd.png

(二)浮点型

浮点型有两种:double 和 float

double:双精度浮点数,一个double类型的数值占8个字节、64位

float:单精度浮点数,一个float类型的数值占4个字节、32位

5468cfbff540eec752962575d3695ad1.png

浮点字面量表示:标准记数法或科学记数法

double pi = 3.14;

double sd =5e-12;

double r = 8E2;

浮点字面量默认是双精度。字面量后面加F或f 表示单精度

float f = 1.1f;

如果要精确计算浮点数(保留几位小数),则要用BigDecimal类(常用于计算金额)

代码示例:

ef41e0bc3b64c9e37634a76aa4e3c276.png

(三)字符型

类型:char

占2个字节

字符型常量的三种表现形式

1、直接通过单个字符来指定字符型常量,例如:‘a'、'1'等

2、通过转义字符表示特殊字符型常量,例如:’n‘、't'等

3、直接使用Unicode值来表示字符型常量,格式是'uXXXX',其中XXXX代表一个十六进制的整数

范围是'u0000'~'uFFFF',共可以表示 65535个字符

java语言常用的转义字符

398e263e7d12b8a594e3ea5f690ec822.png

除此之外,char类型的值可以直接作为整数类型的值来使用,表数范围0~65535

如:char value = 99;

转义字符示例:

8a96336bebd440eef7688362ffea4e81.png

运行结果

6d45197a6a07176f4e53fcd5b4ec6978.png
44efbd2edf90291e3e0394895309e152.png

(四)布尔型

布尔型只有一个boolean类型,用于表示逻辑上的“真” 或 “假”,不能用 0 或者 非0 代表。

true 真
false 假
如:boolean flag = true;
boolean应用流程控制

1 if条件控制语句
2 while循环控制语句
3 do循环控制语句
4 for循环 控制语句
5 三目运算符(? :)中使用

四、类型转换

在java程序中,不同的基本类型的值 经常需要进行相互转换。

类型转换分为自动类型转换和强制类型转换

(一)自动类型转换

当把一个表数范围 小的数值或变量直接赋给另一个表数范围大的变量时,系统可以进行自动类型转换。

自动向范围大的类型转换 ,混合运算时转成最大的范围类型。

如同将小瓶水倒入大瓶没有问题一样

33e690453e94eff2aa578540fba9ef83.png

byte、short 不能自动转换成char

char不能自动转换成byte、short

代码示例:

36dc58b8d6bedb1d745951ac95da8082.png
f96e3c2d82d63178267309612c07fd29.png

如同将大瓶子中的水倒入小瓶子,两种结果

①大瓶子中的水 ≤ 小瓶子中的水,小瓶子能承下(强转没问题)

②大瓶子中的水>小瓶子中的水,水溢出(强转会发生截断(按模取余)或者可能溢出)

能强转成功的前提:类型大的数值小于类型小的最大取值范围。

注意:在编程中要尽量避免由于强转导致的非预期结果

代码示例:

99b78b723dab6ce40b4274c3fc0a32fa.png

五、运算符

知识点:

算术运算符

位运算符

赋值运算符

关系运算符

逻辑运算符

三目运算符

运算符优先级

(一)算术运算符

bef3c499173e58f268e4a59cd8ee18ad.png
8fbfdeb6d58252c253ba09a976c988d9.png
e15471b962724c9a2e8af5cf143a883d.png
8821261567a89e70c353e6a11f87dcc0.png

表达式类型的自动提升

当一个算术表达式中包含多种数据类型的值时,整个算术表达式的数据类型将发生自动提升。

Java 定义了如下提升规则:

1)所有的byte 类型、short 类型和char 类型将被提升到int 类型。

2)整个算术表达式的数据类型自动提升到与表达式中最高等级操作数同样的类型。

638f6e8fb0c84dcfc6a7de89f8b0bf23.png

(二)位运算符

位运算符用来对二进制位进行操作,如果操作数不是二进制,必须转换成二进制后再做位运算

原码:一个整数转换成二进制就是原码,最高位是符号位 0 表示正数 ,1 表示负数

单字节的5的原码为:0000 0101;

-5的原码为:1000 0101;

反码:正数的反码就是其原码;负数的反码是将原码中,除符号位以外,每一位取反

单字节的5的反码为:0000 0101;

-5的反码为:1111 1010;

补码:正数的补码就是其原码;负数的反码+1就是补码

单字节的5的补码为:0000 0101;-5 的补码为1111 1011

在计算机中,正数是直接用原码表示的,负数用补码表示

如果是个十进制负数的位运算

① 需要先把负数的二进制数算出(补码) 负数的原码,除符号位按位取反,再加1

② 然后位运算

③ 再把位运算结果算出原码,(补码转原码 → 补码减1得反码,反码除符号位按位取反得原码)

④ 再将原码转换成十进制

位运算在编程过程中基本用不上

d1cf77f62b8f1ceb23478666a0847e30.png
fa0989bb9291ea0bc3651b2518066465.png
e89a0df4b93a349453aa44ad412140c6.png
7950bea32b8e8dd4dcbb8e7d49cd2ed7.png
f32289e3a06d793f5c4c735439da7811.png
1daae139810818520bc5e0d89cf67320.png
52fe50fcf4a9cc6abc10a69c959dc46f.png
0d48f3a4d5f630e943142532dac2f204.png
eeac5c8a2708ff4e886b146fe8ac0a51.png

(四)关系运算符

关系运算符决定值和值之间的关系,返回布尔型变量

3253533e4cb7ede824077b2d6b2a2122.png

用基本数据类型来做关系运算

1f2a040cd45c31c722aef42ded3c8960.png
a336620bb10542b038e2ccd67f96527b.png
dd4263392baaf04fbe2e21e432168b4f.png
642fd3ee12d00bf305752e72d6db0cef.png
7220d213c0fc366203179a8dc1d6af3c.png
525e006062bc58c4d2dc9076b66f7e0c.png

扫码进入大数据学习群

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_39996739/article/details/111210760
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢