一、注释
什么是注释:
注释是解释说明程序的问题,方便自己和别人阅读代码。
注释的种类和个格式:
注释的种类:
1、单行注释
//用来注释代码中的那一行代码,后面跟解释文字
2.多行注释
/*
多行注释可以在注释范围内注释掉任意多行代码
如:
总有人间一两风
圆我十万八千梦
*/
3.文档注释
/**
这里写文档注释
也可以写多行,文档注释可以利用JDK的工具生成帮助文档
*/
idea中增加注释的快捷键:
Ctrl + / 单行注释(对当前行进行注释)
Crtl + Shift + / 对选中的代码进行多行注释
二、字面量:
什么是字面量:
字面量就是告诉程序员在在程序中的书写格式。下面是常用的数据在程序中的书写格式
常用数据 | 生活中的书写方法 | 程序中的写法 | 说明 |
---|---|---|---|
整数 | 6,7,678,-11,0 | 6,7,678,-11,0 | 书写方法一致 |
小数 | 3.14,-159.26 | 3.14,-159。26 | 书写方法一致 |
字符 | A,0,字 | ‘A’,‘0’,‘字’ | 程序中必须使用单引号引起来,且有且只有一个字符 |
字符串 | 你今天吃了吗 | “你今天吃了吗”,“0” | 程序中必须使用双引号引起来,里面的内容可有可无 |
布尔值 | 真,假 | true,false | 只有两个值,true表示真,false表示假 |
空值 | 值是null | 一个特殊的值,空值,程序中用mull表示 |
三、变量
什么是变量:
变量是用来记录程序中的数据的。其本质上是内存中的一块区域,可以把这块区域理解成一个小盒子。
变量的书写格式为:
数据类型 变量名 = 数据; //int age = 18;
当执行int age = 18;这个代码时,JVM会在内存中申请一块区域,在这个区域中存储了一个整数18,给这个区域取的名字叫age;相当于在盒子中存了一个数据18,这个盒子的名字是age,当我们打印age时,就是从盒子中把盒子中的数据取出来再打印。
变量中的“=”称之为赋值运算,意思是把右边的数据赋值给左边的变量。
为什么要用变量:
使用变量来记录数据,对于数据的管理更加方便灵活,在遇到程序中一个相同的值要在很多个不同的地方使用时可以做到改变量让全部相同的值跟着更改。
使用变量的注意事项:
- 变量定义在哪个{}范围内,它就只在这个大括号范围内有效。变量的有效范围称为变量的作用域。
- 在同一个作用域内不能有两个相同的变量名。
- 变量在没有初始化的时候不能直接使用。
- 变量一般可以定义在同一行。
- 变量记录的数据程序运行过程中是可以发生改变的: 变量名 = 值;
四、标识符
什么是标识符:
在Java中,标识符用来为程序中的常量、变量、方法、类、接口和包命名。标识符命名要遵守一定的规则,包括以下四种规则
-
标识符有字母(AZ和az)、数字(0~9)、下划线(_)、美元标识符($)以及部分Unicode字集符(各符号之间没有空格)组成。
-
标识符的首字母以字母、下划线和美元符号开头,后面可以是任意字母,数字,下划线或美元符号,但绝对不能用数字开头。
-
标识符的命名不能是关键字、布尔值(true,false)和null。
-
标识符区分大小写,没有长度限制。
五、关键字
什么是关键字:
关键字就是java语言中有特殊含义的单词。比如用int表示整数等等。
关键字有哪些:
java中目前一共有51个关键字,它们包括
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const(Java保留,但目前还每用途) |
continue | dafault | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
_ |
关键词的特点:关键词都是小写
阿里巴巴《java开发手册》规范部分:
使用UpperCamelCase风格(即大驼峰命名法)每个单词的首字母都要大写,在Java中,类名,接口名,枚举名都使用该风格命名。
使用LowerCamelCase风格(即小驼峰命名法)第一个单词的首字母小写,其余单词的首字母都要大写,方法名,参数名,成员变量,局部变量都使用该方法命名。
六、数据类型详解
整数在计算机中的存储原理:
任何数据在计算机中都是以二进制表示的。
数据的表示形式除了二进制(逢2进1)、八进制(逢8进1)、还有十进制(逢10进1)、十六进制(逢10进1)等。
-
十进制转二进制:除2取余法。让十进制数据连续除以2,直到商为0,余数反转。
-
二进制到十进制的转换:8421码
-
二进制转八进制:把二进制的每三位一组合,然后对每三位用8421码进行计算,最后拼接到一起。原因:因为111,的值是7, 再大满7就需要往进位了。
-
二进制转十六进制:把二进制的每四位一组合,然后对每四位用8421码进行计算,最后拼接到一起。原因:因为1111,的值是15, 再大1满16了就需要往进位了。
计算机的最小存储单位
计算机的最小存储单位为字节(Byte),一个字节占8位(bit),也就是说即使这个数据不足8位也需要用8位来存储,多余的位数取0占位。
位(bit):位是计算机中的最小存储单位,它可以表示二进制的0或1.它是计算机中处理和存储数据的基本单元,所有的数字、字符、指令和其他数据都以位的形式在计算机中表示。
七、基本数据类型
Java的数据类型整体上来说分为两大类: 基本数据类型、引用数据类型。
基本数据类型一共有4类8种,除过这4类8种之外其他的都是引用数据类型。
注意:
-
输入整数的时候默认是int型,如果想让它为long型就得在数据后边加上后缀L,如:23L。
-
输入小数的时候默认为double型,如果想让它为float型需要加上后缀F,如:3.14F。
八、数据类型的转换
类型转换的形式一般有两种,一种是自动类型转换(扩展原始转换),一种是强制类型转换(缩小原始转换)。
低字节可自动转换为高字节,但高字节转换为低字节的时候得进行强制转换。
8.1、自动类型转换
什么是自动类型转换:
自动类型转换指的是,数据范围小的变量可以直接赋值给数据范围大的变量。
自动类型转换的原理是什么:
自动类型转换其本质就是在较小数据类型数据前面,补了若干个字节。
除了byte和int之间的转换之外,其他类型也可以转换,转换顺序如下图所示
表达式的自动类型转换:
自动类型转换还有另外一种形式,就是表达式的自动类型转换。所谓表达式指的是几 个变量或者几个数据一起参与运算的式子。
如果同一个表达式中,出现不同类型的变量或者数据一起运算,这种情况下运算结果 是一个什么数据类型呢?需要遵守下面的两条运算规则:
-
多种数据类型参与运算,其结果以大的数据类型为准。
-
byte,short,char 三种类型数据在和其他类型数据运算时,都会转换为int类型再运算。
8.2、强制类型转换:
什么是强制类型转换:
强行将范围大的数据,赋值给范围小的变量,这就需要用到强制类型转换。下面是强制类型转换的格式:
目标数据类型 变量名 = (目标数据类型)被转换的数据;
例如:
int a=10;
duble b =10.1;
int c = a+(int)b;
强制类型转换的原理:
强制类型转换的原理,其实就是强行把前面几个字节砍掉,但是有数据丢失的风险。
九、杂项注意事项
9.1、println和print的区别:
println输出语句会在输出的时候自动进行换行操作,而print在输出之后不会进行换行。
9.2、Scanner中的next()方法和nextLine()方法的区别:
next()方法输出的值在遇到空格的时候就结束输出了,不一定输出全部完整内容,而nextLine()方法可以识别到空格,输出键盘输入的完整的内容。
41)]
九、杂项注意事项
9.1、println和print的区别:
println输出语句会在输出的时候自动进行换行操作,而print在输出之后不会进行换行。
9.2、Scanner中的next()方法和nextLine()方法的区别:
next()方法输出的值在遇到空格的时候就结束输出了,不一定输出全部完整内容,而nextLine()方法可以识别到空格,输出键盘输入的完整的内容。