java part类_Java Part 001( 03_01_数据类型和运算符 )

注释

Java语言的注释一共有三种类型,分别是单行注释、多行注释和文档注释。

1. 单行注释

单行注释就是在程序中注释一行代码,在Java语言中,使用双斜线“//”进行单行注释。

2. 多行注释

多行注释是指一次性注释多行代码,在Java语言中,使用“/*……*/”进行多行注释。

3. 文档注释

文档注释用来说明程序的信息,在Java语言中,使用/**开头,*/结束。可以包含一个或多个@标签,每一个@标签必须在一个新行的开始紧跟星号*。

举个栗子:

/***@authorHelloWorld102

*这是一个文档注释*/

public classTest{/*这是一个多行注释*/

public static voidmain(String[] args){//这是一个单行注释

System.out.println("Hello World");

}

}

注释的使用

1. 排查错误, 快速排查出存在错误的代码片段

2. 书写逻辑处理细节, 不管是复杂还是简单的逻辑处理, 为了方便后续代码调整是节省时间, 书写代码完成了什么样的逻辑处理

3. 书写技术点描述, 有些语句可能不太常用, 避免每次看到相关代码都去百度

标识符和关键字

标识符

标识符

所谓的标识符, 就是用于给程序中变量、类、方法命名的符号

标识符的规则

1. 由字母、数字、下划线和美元符号($)组成, 但不能以数字开头

2. 不能是Java的关键字或保留字

Java关键字

Java关键字

Java语言中有一些具有特殊用途的单词被称为关键字,

当定义标识符时, 不能和关键字相同, 否则将引起错误, 如无法通过编译等

注意:

1. Java的所有关键字都是小写

2. main是默认入口的方法名,不是关键字,不是保留字

ebc625b435eb3d0a261e486a49469b23.png

数据类型分类

06c310cc20bc10184d225680fdde9757.png

注意:

空类型(null type)就是null值的类型, 这种类型没有名称;

空引用(null)是null类型变量唯一的值, 空引用可以转换成任何引用类型

空引用只能转换成引用类型, 不能转换成基本类型

Java 常量

Java 中主要有如下几种类型的常量

数值常量 (整数, 小数)

整数的四种表现形式( 二进制, 八进制, 十进制, 十六进制 )

进制: 一种计数方式

字符常量, 字符串常量

布尔型常量

null常量

System.out.println(12);

System.out.println(1.23);

System.out.println('a'+0);

System.out.println("abc");

System.out.println(true);

System.out.println(null); //null不可以打印,也不可以参与运算

进制相关的知识( 扫盲 )

1byte =8bit ( 一个字节为8个比特位 )

进制的转换* 十进制转换为二进制 -- 除/余数* 二进制转换为八进制, 十进制, 十六进制 -- 二进制按照三位分组为八进制

负数的进制表现形式( 扫盲 )

一个整数在计算机中的表现形式6 ===> 00000000 00000000 00000000 00000110一个整数占4个字节, 一个字节8个bit

问题:-6的表现形式是什么呢?整数的二进制取反, 再加10000 0110取反1111 1001

+ 1 0000 0001

--------------

1111 1010小知识: 负数二进制的最高位为1

Java 变量

Java 中主要有如下几种类型的变量

局部变量

类变量(静态变量)

成员变量(非静态变量)

Java变量的概念

内存中的一个存储区域

该区域有自己的名称(变量名)和类型(数据类型)

该区域的数据可以在同一类型范围内不断变化

为什么要定义变量

存储区域的重复使用; x = 3; x = 5;

什么时候使用变量

当数据不确定的时候,使用变量进行表示.

变量就如同数学中的未知数.

变量的定义格式

数据类型 变量名 = 初始化值; int a = 0;

注意:

变量在使用之前必须要进行初始化

变量的数据类型

记忆技巧: 四类八种

基本数据类型

数值型数据 整型-------- byte1个字节-------- short2个字节-------- int4个字节-------- long 8个字节 (L/l)

浮点型-------- float 4个字节 (F/f)-------- double8个字节

字符型数据-------------- char2个字节

布尔型数据-------------- boolean4个字节

引用数据类型 类

接口

数组

变量的"类型提升" 和 "强制转换"

自动类型提升: 低类型 -->高类型

当两个不同类型的数据进行运算时, 转换成占用内存比较大的那种类型之后再进行运算

比如:int a = 3;byte b = 2;int i = a + b; //a占用内存大, 所以b会提升为int类型进行运算

强制类型转换: 高类型--> 低类型 char b = (char)a;

将一个占用内存大的数据, 赋值给一个占用内存小的数据是, 需要进行强制类型转换

比如:

显式强制类型转换int a = 3;byte b = 2;byte i = (byte) (a + b); //a占用内存大, 所以b会提升为int类型进行运算

隐式强制类型转换byte b = 2 + 3;

扩展信息 - 码表( ASCII美国码表 gb2312 国标码表 gbk国标扩展码表 Unicode国际标准码表 )

ASCII美国码表 gb2312 国标码表 gbk国标扩展码表 Unicode国际标准码表(万国码)

扩展信息 - 类型转换考题

byte b = 3 + 4;1.是否可以正常执行 可以2.执行原理 右边为int类型的数据, 当进行赋值是会进行判断, 如果符合范围, 隐式强制类型转换int a = 2;byte b = a + 4;1.是否可以正常执行 不可以, 编译就会报错2.执行原理 a是变量, 无法进行大小范围的检查, 必须进行强制类型转换intx;int a = 1;int b =Integer.MAX_VALUE;1.是否可以正常执行 可以2.执行原理 都为同种类型, 超出后自动舍弃最高位

运算符

算术运算符

赋值运算符

比较运算符

逻辑运算符

位运算符

三元运算符

算数运算符

+ - * / % ++ --

/**重点:

++ --

b=a++(a先参与运算,在自增) b=++a(a先自增,再参与运算) 如果不参与运算,仅为自增

了解:

1. 6370 / 1000 * 1000 = ? 答案: 6000, 两个整数运算得到的是整数

2. 5 % 2 答案: 1

-5 % 2 答案: -1 (模运算中的负数符号, 仅参考被模数)

2 % -5 答案: 1

3. "5+5"+5+5 和 "5+5"+(5+5) 答案: 5+5=55 5+5=10*/

赋值运算符

假设x=6、y=3:=:若是x=y,那么x=3.+=:x+=y相当与x=x+y,结果是x=9.-=:x-=y相当与x=x-y,结果是x=3.*=:x*=y相当与x=x*y,结果是x=18./=:x/=y相当与x=x/y,结果是x=2.%=:

重点:short s = 3;

s+=4; //正常执行, 该表达式底层进行了类型转换处理

s = s + 4; //编译失败, 高类型转换为低类型, 需要进行强制类型转换

比较运算符

> < >= <= == !=比较运算符的结果为true或者false

逻辑运算符

! &(&&) |(||) ^作用: 连接布尔类型数据的表达式!true-->false true&true--->true注意:^ 异或的两边如果相同,结果为false;两边不同结果为true. true^true-->false false^false--->false重点:&& 和||, 如果左边可以得到整个表达式的结果, 那么右边的不参与运算, 所以效率更高, 开发中常用.

位运算符

<>(右移) >>>(无符号右移) &(与) |(或) ^(异或) ~(反码)

作用: 用于对二进制进行运算.

4cf6c4fd85febd25d4bcdef03775f5ce.png

de65f36d6fbba0a761e74a02f05751e2.png

未完, 待续......................

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值