JavaSe基础语法

JavaSe基础语法

1. 变量(variable)

1.1. 变量简介

程序最核心的目的就是为了操作数据,但是数据都在内存中,也就是我们的JVM,而且这个内存区域是 循环使用的。 程序中一般使用变量来操纵存储空间中的数据! Java是一种强类型语言,每个变量使用前必须提前声明,可以合理更加合理的利用空间。 Java变量要素包括变量名,变量类型和作用域。

modifier type identifier [ = value][, identifier [= value] …] ;
identifier :定义一个变量的名字
type :用来确定占用空间的大小

简单来说: 变量=数据类型+标识符

1.2. 标识符

给类,接口,方法,变量等起名字的字符序列。用来查找、定位、标明、唯一确认内容。 Java 标识符有如下命名规则:

标识符必须以字母、下划线_ 、美元符$开头。 标识符其它部分可以是字母、下划线“_”、美元符“ ”和数字的任意组合。

Java 标识符大小写敏感,且长度无限制。

不可以是Java的关键字

JAVA不采用通常语言使用的ASCII字符集,而是采用unicode这样的标准的国际字符集。因此,这里 的字母的含义:英文、汉字等等。

合法的表示符
int a = 3;
int _123 = 3;
int $12aa = 3;
int 变量1 = 55;

不合法的标识符

int 1a = 3; //不能用数字开头
int a# = 3; //不能包含#这样的特殊字符
int int = 3; //不能使用关键字

1.3. 关键字

Java关键字是Java语言保留供内部使用的。

关键字也可以称为保留字,它们的意思是一样的。是被系统征用的特殊单词(标识符),而且是被广大程序 员所认知的

JavaSe基础语法_第1张图片

goto和const作为保留字存在。

不能使用关键字作为变量名或方法

1.4. 前置技能:进制与转换

进制就是进位制,是人们规定的一种进位方法。

对于任何一种进制—X进制,就表示某一位置上的数运算时是逢X进一位

二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。 生活中其实有很多进制:10进制 星期 小时 分钟 秒钟 年 月

Java进制分为二进制,八进制,十进制,十六进制, 但是计算机只能处理2进制的数据和指令。

十进制: 都是以0-9这九个数字组成,不能以0开头。
二进制: 由0和1两个数字组成。
八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。
十六进制:由0-9和A-F组成。为了区分于其他数字的区别,开头都是以ox开始

进制的转换

二进制 --> 十进制

123 = 1 * 100+2 * 10+3 * 1 = 1 * 10^2 + 2 * 10^1 +3 * 10^0 = 123 110 = 1 * 2^2 + 1 * 2^1 + 0 * 2^0 = 6

十进制 --> 二进制

对十进制数字取余 然后将余数逆序拼接到一起

二进制的符号位

一般情况下,我们把二进制的左数第一位作为符号位,8个数字为一组

0 正数 1 负数

6 --》0000 0110

-6–》1000 0110

进制的转换
二进制 --> 十进制
123 = 1 * 100+2 * 10+3 * 1 = 1 * 10^2 + 2 * 10^1 +3 * 10^0 = 123
110 = 1 * 2^2 + 1 * 2^1 + 0 * 2^0 = 6
十进制 --> 二进制
对十进制数字取余 然后将余数逆序拼接到一起
二进制的符号位
一般情况下,我们把二进制的左数第一位作为符号位,8个数字为一组
0 正数 1 负数
6 --》0000 0110
-6–》1000 0110

原因:
因为在使用原码,反码在计算时不准确,使用补码计算时才准确。
而且计算机没有减法,只有加法
计算机的容量
电脑的容量单位最小的是Bit,也就是位。
而8位为一个字节,也就是Byte

Kilobyte〈KB〉=1024bytes相当於一则短篇故事的文字内容;
Megabyte〈MB〉=1024 Kilobytes相当於阅读一则短篇小说的文字内容;
Gigabyte〈GB〉=1024 Megabytes相当於贝多芬第五章交响曲的乐谱内容;
Terabyte〈TB〉=1024 Gigabytes相当於一家大型医院中所有X光图片资讯量;
Petabyte〈PB〉=1024 terabytes相当於50%的全美学术研究图书馆藏书资讯内容;
Exabyte〈EB〉=1024 petabyte,相当於至今全世界人类所讲过的话语;
Zettabyte〈ZB〉=1024 exabyte如同全世界海滩的沙子总和;
Yottabyte〈YB〉=1024 zettabyte相当於7000位人类体内的微细胞总和

平常我们买的硬盘大小会有一定的损失

工业标准是按照1000进行计算

科学标准是按照1024进行计算

JavaSe基础语法_第2张图片

1.5. 数据类型

java定义数据类型比较主要的一个操作是为了分配不同内存空间
对内存占用分类
基本数据类型(primitive type)
基本数据类型占用内存大小是固定的
①整数类型: long、int、short、byte
②浮点类型: float、double
③字符类型: char
④布尔类型: boolean
引用数据类型(reference type)
引用数据类型占用的内存大小是未知的
类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
除了基本数据类型,就是引用数据类型
但是引用数据类型都是由基本数据类型构成的

1.5.1. 基本数据类型

Java中定义了3类8种基本数据类型
逻辑型-boolean
文本型- char
数值型- byte, short, int, long, float, double
JavaSe基础语法_第3张图片

数值类型-整型

JavaSe基础语法_第4张图片

数值类型-浮点型

IEEE754标准
JavaSe基础语法_第5张图片

布尔类型

在这里插入图片描述

boolean类型有两个值,true和false boolean

类型用来判断逻辑条件,一般用于程序流程控制 。

字符类型

在这里插入图片描述

单引号用来表示字符常量。例如 ‘A’ 是一个字符,它与 “A” 是不同的, “A” 表示含有一个字
符的字符串。
char 类型用来表示在 Unicode 编码表中的字符。
Unicode 编码被设计用来处理各种语言的所有文字,它占2个字节,可允许有65536 个字符。
Unicode具有从0到65535之间的编码,通常用从 ’\u0000’ 到 ’\uFFFF’ 之间的十六进制值来表
示(前缀为u表示Unicode)

char char1 = 'a';
char char2 ='中';
char c = '\u0061';
char c2 = '\n'; //代表换行符

JavaSe基础语法_第6张图片

注:以后我们学的String类,其实是字符序列(char sequence)

1.5.2. 引用数据类型

声明之前我们不知道真实对象所占用内存大小的多少
注:引用数据类型的大小统一为4个字节,记录的是其引用对象的地址!

1.6. 变量作用域

局部变量(lacal variable) :
方法或语句块内部定义的变量。生命周期是从声明位置开始到下一个}为止(Java支持块级作用
域)。
在使用前必须先声明和初始化(赋初值)

public void incorrectLocalV() {
     
int i;
i=10;
int j = i+5 ; // 编译出错,变量i还未被初始化
}

实例变量(成员变量 member variable):
方法外部、类的内部定义的变量。从属于对象,生命周期伴随对象始终
如果不自行初始化,他会自动初始化成该类型的默认初始值
数值型变量初始化成0或0.0
字符型变量的初始化值是16位的 ‘\u0000’
布尔型默认是false

你可能感兴趣的:(java,编程语言)