JAVA基础

计算机内存

内存的作用

内存的主要作用是用来平衡cpu的处理速度和硬盘的读取速度。一块硬盘的读取速度是100M/s。而的处理速度远远超过这个速度,所以如果没有内存参与,可能会产生硬盘全力读取,CPU却一直空闲的状态

内存的工作原理

  • 数据分类
    不同类型的数据进行存储要提前分类,内存要确保自己存储的信息能被认知。
  • 数据的储存
    将大量0、1组成的数据在内存中用元器件的通电与断电形式进行储存,所以内存只能临时存储数据。
  • 数据形式
  • 既然要存储数据,到底什么是数据?在计算机中其实没有数据的概念,只有0、1。
  • 进制
    数据是由0、1组成的,不同情况有不同的使用,哪必须有不同的进制。

实现封装的步骤

数据形式

通常计算机能帮我们记录数据,而计算机是通电运行,所以我们用电流来表达数据。计算机大部分硬件中,通电表示1,断电表示0,这样就形成大量的01组合也就产生了数据。

数据进制

二进制是硬件最原始的数据记录方式,但由于二进制会产生大量01组合,记录的数据越大数位越长,很难阅读和理解。所以根据不同的情况,会使用不同的进制。

数据分类

计算机有很多数据类型,为不同类型的数据所准备,也就是说不同类型的数据存放在内存所对应类型的空间中。

在这里插入图片描述

JAVA中的数据类型

类型占用空间取值范围默认值
byte1字节-128~1270
shot2字节-215~215-10
int4字节-231~231-10
long8字节-263~263-10L
float4字节-3.403E38~3.403E380.0F
double8字节-1.798E308~1.798E3080.0D
char2字节0~65535\u0000
类型取值范围
booleantrue、false

数据存储

内存其实是个大网,像一张表格一样充满了行和列,行列交错也就产生了单元格,每个单元格存储1位信息,通常每段信息的第一个单元格被称为”内存起始地址”,用来记录数据在内存中的位置。

Java内存应用

堆里是主要数据存储空间,大量的数据本体会被存储在这里空间内,同时这个区域的空间是动态的,当需要空间时进行申请,堆就会分配一块区域给你,用完之后再归还给堆。它像一条管道一样,先进先出。

但由于堆的特性,导致数据在存入堆后检索速度受限,所以栈是一种对堆的使用方法。我们主要用它来存储Java中的标识符,也就是给放在堆里的数据做个标记,让我们能通过栈更快速的定位到数据在堆里的位置。它像是一个桶一样,先进后出。

变量

命名

  • 只能用英文、下划线、数字、$结尾
  • 只能用英文、_、$开头
  • 不能使用关键字命名
    Java中存在很多已经预先被使用并赋有意义的英文,被称为关键字
  • 个单词首字母小写其余首字母大写
  • 虽然可以但一般不使用_$
    虽然可以使用_$,但在特殊情况会导致程序出错,所以一般不推荐

声明变量

int表示要存储的数据类型是整数类型,num表示标识符

赋值

=表示要将右边的数据存放在左边的变量中。

使用变量

使用变量时,因为有标识符的存在,所以什么地方需要使用只需要写标识符即可。目的都是在堆内申请空间,并放入一个数据!要存储不同的数据,必须创建对应类型的变量!具体要使用哪个数据类型,必须大家通过现实需求进行分析!

逻辑运算符

算数运算符

+、-、*、/、%、++、–、+=、-=、*=、/=、、%=
  • +比较特殊,在几个数字的运算中,+扮演了“加”的角色。
  • 在编程语言中,除法运算被拆分成了两部分,/求商和%求余数。
  • num1++,是num1 = num1 + 1;的缩写,也就是让num1本来的值加1。
  • ++num1,作用同num1++,但在程序中会优先计算,num1++则会优先使用变量的现有值。
  • num1–,是num1 = num1 - 1;的缩写,也就是让num1本来的值减1。
  • –num1,作用同num1–,但在程序中会优先计算,num1–则会优先使用变量的现有值。
  • num1+= 2,是num1 = num1 + 2;的缩写,也就是让num1本来的值与2相加。num1-= 2,是num1 = num1 - 2;的缩写,也就是让num1本来的值与2相减。*=、/=、%=,同理。

比较运算符

>、<、>=、<=、==、!=、equals
  • 比较运算符是用来对运算符左右两个变量的值进行比较,得到结果是boolean类型,因为无论是何种比较,结果只有真或假两种。
  • 注意:单个=是赋值运算符,两个==才是比较。
  • ==用来判断基本数据类型是否相等,而String属于引用数据类型。
  • equals专门用来判断两个字符串的值是否相等。

逻辑运算符

运算符用法作用
&&、&num1>num2&&num1<10与,前后条件同时true,则true
||、|num1==5
!!(num1>10)非,除了表达式的情况之外为true
  • 比较运算符是用来对运算符左右两个变量的值进行比较,得到结果是boolean类型,因为无论是何种比较,结果只有真或假两种。
  • &按位与,要依次判断前后表达式结果,&&逻辑与,左边为false就为false
  • |按位或,要依次判断前后表达式结果,||逻辑或,左边为true就为true
  • x==33 & ++y>0 该表达式无论结果如何,y的值总会+1。x==33 && ++y>0 则y的值不+1。

运算符优先级

()>!>算数运算符>比较运算符>&&>|| >赋值运算符
  • 当运算优先级不够时,可以在表达式外边增加小括号()来提升表达式的优先级。

三目运算符

?是三目运算符,当表达式结果为true,则执行?后面的代码;当表达式结果为false,则执行:后面的代码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值