变量

1.变量

分类

变量大体可分为 成员变量和局部变量。其中局部变量可分为如下3类。

  • 形参:在方法签名中定义的局部变量,由方法调用者负责为其赋值,随方法的结束而消亡。
  • 方法内的局部变量:在方法内定义的局部变量,必须在方法内对其进行显示初始化。这种类型的局部变量从初始化完成后开始生效,随方法的结束而消亡。
  • 代码块的局部变量:在代码块内定义的局部变量,必须在代码块内对其进行显式初始化,这种类型的局部变量从初始化完成后开始生效,随代码的结束而消亡。

成员变量分为静态变量和实力变量

  • 静态变量:在类中定义static修饰的变量属于类本身 一个类中只有一份,属于对象共有,在准备阶段分配内存赋值为默认,第一次使用类时完成初始化赋值为自定义值,存储在静态存储区,经常被声明为常量
  • 实例变量:类中定义无static修饰的变量属于对象,成员变量存储在堆内存的对象中,所以也叫对象的特有数据。 数值型变量默认值为0,布尔型默认值为false,引用类型默认值为null;
类型

类型分为基本类型和引用类型

基本数据类型
数值类型:
		整数类型:byte,short,int,long
		浮点类型:float,double
		字符类型:char
		
布尔类型:boolean  
整数类型宽度取值范围
byte1个字节(8位)-128~127
short2个字节(16位)-215~215-1
int4个字节(32位)-231~231-1
long8个字节(64位)-263~263-1
计算机是二进制的,以byte来看,8位二进制数可以表示2的八次方位数字,由于数值都是从0开始的且有正负,所以PC中将二进制0开头代表正数,1开头代表负数,所以取值范围是11111111-011111111->-127-127但是因为00000000已经表示为0了,所以10000000应该表示为-128.最终取值范围是-128~127

正数 00001110  源码,反码,补码都是本身
负数 10001110  复制的反码除了符号位其余都取反 补码 = 反码+1
计算机中保持数据的都是补码的形式保存,如PC中存储10000001,计算机中保存的是11111111;
浮点类型宽度
float4个字节(32位)
double8个字节(64位)
float表示:需要在数值后面加上f或F

字符类型char

字符类型使用单引号括起来。默认值\u0000;

字符类型占2个字节16位,并且采用Unicode编码,所以可用十六进制(无符号的)编码形式表示,如‘A’可以用‘\u0041’表示。取值范围为\u0000~\uFFFF。

布尔类型

关键字:boolean
取值:true和false

数值之间转换

自动类型转换:范围小的类型转为范围大的类型

强制类型转换:范围大的类型转为范围小的类型,但是可能会出现精度缺失的情况

char类型比较特殊,char自动转为int,long,float,double,但是byte,short,不能自动转为char,char也不能转为byte和short.
引用数据类型
包含:类,接口,数组

引用类型变量中指向对象的内存地址
基本数据类型的默认值

系统在分配元素的初值时,按一下规则:
如元素为基本类型中的整型,默认值为 0;
如是基本类型中的浮点型,默认值为 0.0;
如实基本类型中的字符型,默认值为 ‘\u0000’;
如实基本类型中的布尔型,默认值为 false;
如是引用类型,默认值为 null;

数组

基本特性:一致性,有序性,不可变性。

静态初始化

int[] intArray;

intArray = {21,56,33,24};

已知数值中的元素时使用静态初始化

动态初始化

int[] intArray = new int[4];
intArray[0]=1;
intArray[1]=1;
intArray[2]=1;
intArray[3]=1;

编程时不知道元素有元素的内容时使用动态初始化

2.方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值