【零基础学Java】第四天 变量,数据类型及使用细节
前言
1.双非在校大学生,想通过自学Java进大厂
2.给跟我一样的大学生分享我的经历,和学习资源
3.本版块将会记录从Java入门到就业的所有学习笔记和资源
4.我还会分享我在学习Java中遇到的各种问题和各种解决方法
1.变量及使用注意事项
- 变量表示内存中的一个存储区域,该区域有自己的名称【变量名】和类型【数据类型】。
- 变量必须先声明再使用。
- 该区域的数据/值可以在同一类型范围内不断变化。
- 变量在同一个区域不能重名。
- 变量 = 变量名 + 值 + 数据类型(变量三要素)。
2.程序中 + 号的使用
1.当左右两边都是数值型时,则做加法运算。
2.当左右两边有一方为字符串,则做拼接运算。
3.运算顺序从左到右。
3.Java数据类型分类
数据类型包括基本数据类型和引用数据类型
1.基本数据类型
基本数据类型:数值型,布尔型,字符型
数值型
- 整型:byte[1] , short[2] , int[4] , long[8] 存放整数
- 浮点型:double[8] , float[4] 存放小数
字符型
- char[2] 存放单个字符 ‘a’
布尔型
- boolean[1] 存放 true 和 false
2.引用数据类型
引用数据类型:类(class),接口(interface),数组([])
4.八个基本数据类型的使用及注意事项
1.整型类型及使用细节
类型 | 占用存储空间 | 范围 |
---|---|---|
byte[字节] | 1字节 | -128~127 |
short[短整型] | 2字节 | -(215)~215-1 |
int[整型] | 4字节 | -(231)~231-1 |
long[长整型] | 8字节 | -(263)~263-1 |
Java 的整型变量默认为 int 型,声明 long 型常量时需要在后加 ’ l ‘ 或 ’ L ‘
Java程序中变量常声明为int,只有当不足以表示大数时,才使用long
bit:计算机最小的存储单元,byte:计算机基本存储单元, 1 byte = 8 bit
2.浮点类型及使用细节
类型 | 占用存储空间 | 范围 |
---|---|---|
单精度float | 4字节 | -3.403E38~3.403E38 |
双精度double | 8字节 | -1.798E308~1.798E308 |
浮点数的存放形式 浮点数 = 符号位 + 指数位 + 尾数位
尾数部分可能丢失,造成精度损失(小数都是近似值)
Java 的整型变量默认为 double 型,声明 float 型常量时需要在后加 ’ f ‘ 或 ’ F ‘
浮点型有两种表示方法
十进制数形式:5.12 512.0F .512(0.512)
科学计数法形式:5.12e2(5.12 * 10^2) 5.12E-2(5.12 * 10^ -2)
通常情况,使用double型,因为精度比float更高
浮点型的使用陷阱 2.7 与 8.1/3(小数在计算时有误差)
public class doubletest{public static void main (String []args){double a1=2.7;double a2=8.1/3;System.out.println("a1="+a1);System.out.println("a2="+a2); //判断两者是否相等可以通过判断它们差值的精确值是否满足我门地要求来认为它们相等 if(Math.abc(a1-a2)<0.000001){ System.out.println("差值非常小,认为相等"); }}}/*输出 两者是不相等的,所以我们在进行两个数的判断时,要注意a1=2.7a2=2.6999999999999997差值非常小,认为相等*/
在这里我们用到了Math.abc()这个函数,引出Java API文档(中文在线文档)
在使用时我们直接搜索类名就行,比如Math.abc()就搜索Math再到里面去找就行
3.字符类型及使用细节
1.字符常量是用单引号( ‘’ )括起来的单个字符。‘a’ , ‘中’ , ‘9’
2.Java中还允许使用转义字符 ’ \ '来将后面的字符转换为特殊字符型常量 ‘\n’ 表示换行符。
3.在Java中字符本质是一个整数,在输出时,是unicode码对应的字符,比如可以直接给char直接赋值一个常数,会按照对应的unicode码输出相应的字符
4.char类型是可以运算的,相当于一个整数。
public class chartest{public static void main (String []args){char m = 97;char n = 'a';System.out.println(m); System.out.println(n);System.out.println(n+10);System.out.println((int)n);}}/*输出97a10797*/
4.布尔类型及使用细节
1.布尔类型( boolean )只允许取值 true 和 false,只占一个字节。
2.布尔类型适合逻辑运算,一般用于程序流程控制。
3.布尔类型的 true 和 false 不能被非0和0代替,这点与 c 和 c++ 不同。
超强干货来袭
云风专访:近40年码龄,通宵达旦的技术人生