JavaSE第四天——基础语法

一、计算机单位存储换算和Java数据类型

1、计算机基础知识

  • bit 位 ,即0或者1, 0101010110

  • byte字节,8位作为一个字节,字节是处理数据的基本单位

  • 1 byte = 8bits

  • 1KB = 1024 bytes

  • 1MB = 1024 KB

  • 1GB = 1024 MB

2、Java数据类型

Java的数据类型可以分为两大类:基本数据类型和引用数据类型。

基本数据类型:

1、整型

  • byte:8位,最大存储数据量是255,取值范围在-128到127之间。

  • short:16位,最大数据存储量是65536,取值范围在-32768到32767之间。

  • int:32位,最大数据存储容量是2的32次方减1,取值范围在-2147483648到2147483647之间。

  • long:64位,最大数据存储容量是2的64次方减1,取值范围-9223372036854774808到9223372036854774807之间

2、浮点型

  • float:单精度浮动数,直接赋值时必须在数字后加上f或F。

  • double:双精度浮动数,精度比float高

3、字符型

  • char:用于存储单个字符,可以是汉字,16位的 unicode字符,即两个字节表示一个字符

4、布尔型

  • boolean:只有两个取值,即true和false

类型转换 double > float > long > int > short > byte

小转换到大,可以直接转换(隐式类型转换),而从大到小,需要强制转(显式类型转换),会有精度丢失

引用数据类型:

  • 引用数据类型不直接存储数据值,而是存储对对象在内存中的引用(即对象的内存地址)。

  • 通过引用,我们可以操作该对象及其属性和方法

eg :字符串(String):字符串是不可变的,即每次对字符串进行修改操作(如拼接、替换等),都会生成一个新的字符串对象

类(Class):通过new关键字和类的构造函数可以创建类的对象,对象在内存中占用空间,并通过引用来操作

还有数组(Array)、接口(Interface)、枚举(Enum)、注解(Annotation)都是引用类型。

二、数组

数组 Array

  • 一种数据结构,用来存储同一类型之的集合, 内存中存储相同数据类型的连续的空间

  • 在Java中,数组是一种引用数据类型,它存储的是对对象的引用,而不是对象本身

  • 数组的大小在创建时确定,之后不能改变,通过一个整形下标可以访问数组中的每一个值, 从0开始计算,所以一个长度为n的数组的有效索引范围是0n-1

  • 需要初始化才可以操作,且使用数组时,应确保不越界访问,否则会抛出ArrayIndexOutOfBoundsException异常。

使用数组:声明数组变量时,需要指出数据类型和数组变量的名字

eg:

int [] numbers = new int[100];//声明了一个名为numbers的数组变量,并创建了一个长度为100、数据类型为int的数组。所有元素都被初始化为0。
int [] numbers = { 1,2,3,4,5,6 };//初始化,数组的大小就是初始值的个数

多维数组:

int [][] numbers = new int[3][3];//创建
int [][] numbers = {{1,2,3},{4,5,6},{7,8,9}};//创建并初始化

数组里面有很多方法,是自带的方法和属性,获取数组长度的属性名称 length,使用就是 数组名.length

三、数据存储之Java内存空间堆栈

java在内存中有堆、栈两块存储空间。

数据类型在内存中使用:

  • 基本的变量类型只有一块存储空间(分配在stack中),

    • 传递的时候直接是值传递,

    • 对数据进行操作,不影响原先的值

  • 引用类型有两块存储空间(一块在stack中,一块在heap中)

    • 一个对象在内存中会请求一块空间来保存数据,访问对象的时候不会直接是访问对象在内存中的数据,而是通过引用去访问

 不同数据类型在堆栈里面怎么分配的:

int a=1;
boolean flag=false;
Student s = new Student();
Person p1 = new Person();
Person p2 = p1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值