欢迎来到我的个人博客
Java第一行代码,常量,变量
准备第一行Java代码
Notepad++ 前期准备
1. 打开Notepad++ 图标是一个绿色的变色龙
2. Notepad++ 菜单栏【设置】 -> 首选项 -> 自动完成 -> 反选所有
3. 首选项 -> 新建 -> 格式 选择Windows -> 编码集 ANSI
4. 新建新的文本标签页 a) 双击文本标签页的空白处 b) Ctrl + N
5. 书写Java代码,要求Java文件的名字必须和class之后的名字是一致的,可以使用粘贴复制,保存的Java文件,【必须】用.java后缀名结尾
Java代码通用代码规范
1. 在代码中所有的成双成对的标点符号必须一起写, 例如: [] {} () "" ''
2. 在每一条语句之后,都要有分号 ; 结尾, 区分是不是一条语句,就看这行代码之后有么有大括号
3. 如果你的代码需要缩进,需要对齐,请使用tab键
编译Java代码
编译和运行Java程序需要的两个Java工具
javac.exe 编译Java文件,生成与之对应的.class(字节码文件),二进制文件
java.exe 执行编译之后的得到的.class(字节码文件)
格式:
javac FristJava.java ==> FirstJava.class
java FristJava ==> 执行Java程序
初学者代码开发的问题
1. 迷路 操作的工具文件夹要是你目标文件夹,注意路径问题
2. 细节问题 中文符号 ;;; () ()
3. 拼写错误 main mian println
4. 文件名和class之后的名字不统一
数据在内存中的存储方式【了解】
存储数据的单位
在计算机中,最小的操作单位是 字节 byte
1byte = 8bit 一个字节对应8个二进制位
1024byte = 1kb
1024kb = 1mb
1024mb = 1gb
1024gb = 1tb
1024tb = 1pb
2014年 淘宝这十年 50PB
数据如何保存
常见进制
进制 | 基数范围 | 规则 |
---|
十进制 | 0 ~ 9 | 逢10进1 |
二进制 | 0 ~ 1 | 逢2进1 |
八进制 | 0 ~ 7 | 逢8进1 |
十六进制 | 0 ~ 9 A ~ F | 逢G进1 |
原码 反码 补码 【掌握】
在计算机中,保存数据都是使用补码方式,这里演示我们使用整数来展示
正整数和负整数
正整数:
三码合一 原码 反码 和 补码 是一样的
就是该正整数的二进制表示方式
例如:
118(10) = 0111 0110(2)
负整数:
-118
原码: 该负数对应正整数的原码 最高位表示符号位 1表示负数,0表示正数
-118(10) => 0111 0110(2) => 1111 0110(2)
反码: 原码除【符号位】之外,其他位按位取反
1111 0110(2) = 1000 1001(2)
补码: 反码 + 1
1000 1001(2) + 1 = 1000 1010(2)
0111 0110(2) 118
+ 1000 1010(2) -118
---------------------------
0000 0000 0
负数在计算机中保存的形式是用补码形式
这样操作是为了简化计算机的运算逻辑复杂度,提供计算机的运行效率
常量【重点】
π 3.1415926 祖冲之
G 重力加速剂 9.8
C 光速 一秒绕地球7.5圈 真空
黄金比例 0.618
文字 英文字 A B C D
常量不单单是常见的数字,字母,文字,当然也包含语句也是常量
开发中的常量:
在程序运行的过程中,不会发生改变的量,就是常量
整数: 10 20 30 100 -500
小数: 3.1415926 0.618 9.8
真假关系: T F true false 布尔类型 boolean 舶来品
字符:
'a' 'A' '1' '我' '$'
[特征]
【英文单引号】包含的【单个元素】,这个称之为【字符常量】
字符串:
"This is String"
[特征]
【英文双引号】包含的所有内容都是字符串常量
编码集问题:
GB2312 中国简体文字和一部分少数名族的文字 我 1111 1001
BIG5 中文繁体字的编码 我 1001 1111
GBK Windows操作系统,默认的中文模式的编码集 新国标 包含所有的简体文字和少数民族文字
UTF-8 万国码 开发中统一使用的编码集
Java HTML MySQL Oracle
ASCII 最简单的编码集
128个
0 ~ 31 不可见字符
【要求】在使用ASCII码时,直接使用字符本身,不要使用对应的编码
'A' 对应的ASCII 65
转义字符:
\" \'
\n 回车 enter
\t tab键,制表符
\\ 展示一个反斜杠
\\\\ 展示两个反斜杠
'\n' √ 字符常量
转义字符的注意事项:
1. 转义字符有且只能转义\之后的第一个字符
2. 转义字符是一个整体,可以看做是一个字符常量
【面试题】 2015年
请问 '\40' 表示什么?
在转义字符中出现数字,都是对应ASCII码表的八进制表示 \40 == 32(10) sp
空格。这里面试如果遇到 \040 \40 是一样的
命名规范 标识符 【原则问题 规范】
以下内容参考 AJCG (阿里巴巴技术团队规范)
邮箱注册:
126邮箱 注册邮箱名:
6~18个字符,可使用字母、数字、下划线,需以字母开头
标识符的命名规范
1.标识符只能使用数字 0 ~ 9 字母 A ~ Z a ~ z 以及唯一能够使用的标点符号
下划线 _
2. 要求标识符必须用字母开头
3. 在标识符中,严格区分大小写!!! A a是两个完全不同的含义
4. 标识符没有严格的长度限制,但是会根据业务的需求来确定使用的长度
5. 标识符必须要做到 见名知意 动宾结构 【重点】
img1 img2 img3 img4 img5 img6
imgTitle imgLogo imgBanner 增加辨识度
a b c d e
int a,b,c,d;
ageOfStudent scoreOfStudent studentID
tsgly 图书管理员 200RMB
payTime
payBeiZhu
lp Wife
fq Father
mq Mather
lg Husband
yy
yy1
6. 要求使用驼峰命名法
a) 小驼峰
首字母小写,其他每一个单词的首字母大写
ageOfStudent iPhone iMac iTouch iPod iPad
b) 大驼峰
所有单词的首字母都要大写
要求class之后的名字要符合大驼峰命名法
FirstJava Demo1
7. 在Java语言中,已经被占用的关键字和保留关键字不能作为标识符
在代码中变色的单词,不能用来当做标识符
变量 【重点】
天气
16 ~ 31
11 ~ 22 年龄 体重 时间 身高
方程 未知数
x + y = 15;
2x + y = 10;
x = -5
y = 20
变量
在代码中的变量定义:
在程序的运行过程中,可以发生改变的量,就是一个变量
例如: 在二元一次方程中,x 和 y 都是未知数(变量)的名字,需要一个变量名,来保存或者说使用数据
考虑数据类型:
参考常量的数据类型, 整数,小数,真假关系,字符
整型 浮点类型 布尔类型 字符型
八大基本数据类型
整型 | 占用内存空间大小 | 数据范围 |
---|
byte | 1字节(8bit) | 0 ~255 |
short | 2字节(16bit) | 0 ~ 65535 |
int | 4字节(32bit) | 0 ~ 2^32 - 1 |
long | 8字节(64bit) | 0 ~ 2^64 - 1 |
浮点型 | 占用内存空间大小 | 数据范围 |
---|
float(单精度浮点型) | 4字节(32bit) | -3.4 * 10^38 ~ 3.4 * 10^38 |
double(双精度浮点类型) | 8字节(64bit) | 10^308 |
布尔类型 | 占用空间大小 | 数据范围 |
---|
boolean | 视情况而定(不考虑) | true false |
字符类型 | 占用空间大小 | 数据范围 |
---|
char | 2字节(16bit) | 在GBK编码下可以保存中文 |
如何定义一个变量
数据类型 变量名 = 初始化的数据;
变量定义的注意事项:
1) 在Java中,一个变量没有被赋值的情况下,不能使用!!!
2) 计算机原则是保证数据的完整性,不考虑占用的数据空间是否浪费,在开发中常量小
数会被认为是一个double类型数据。这里是用double类型的数据赋值给float类型,
在Java中是不被允许的(数据类型一致化问题)。为了给float类型的变量赋值。要求
格式如下:
float floatNumber = 3.14F;
F表示该小数是一个float类型的数据
3) 如果给long类型变量赋值,为了保证数据类型一致化,通常会在数据之后加上大写L
4) 在给字符变量赋值的时候,请使用字符本身,不要考虑ASCII的问题。这里可以使用
字母,数字,标点符号,转义字符,汉字
额外关注: '\0' ASCII 第一个字符 通常用来初始化字符类型变量
5) = 赋