JAVA基础总结

第一章数据类型和运算符

1. JDK的安装,环境变量的配置

JDK包含的内容
  1. JDK(开发工具包),包含:JAVA开发工具,JRE
  2. JRE(JAVA运行环境),包含:API(JAVA类库)+JVM
  3. JVM(JAVA虚拟机),加载 .class 文件,并运行 .class,其中不同平台的JVM不一样,但是编译规则一样
环境变量的配置
  1. 添加系统环境变量:JAVA_HOME,指向jdk的安装路径
  2. path值添加:%JAVA_HOME%/bin(指向jdk下的bin目录)
  3. 验证成功:打开运行窗口输入cmd进入dos界面
    输入:java -version 是否输出内容
    javac 是否成功

开发程序的三步骤:

编写——编译——运行

使用idea开发程序

注解:
单行注释://
多行注释:/* */
文档注释:/ ** */

2.虚拟机和跨平台的原理

java虚拟机及跨平台原理

3.变量

a) 什么是变量?

就是数据储存空间的表示,可以理解为存储数据的容器

b)变量的命名规则

变量的命名要符合表示符的语法要求(在java中,标识符就是用来为常量,变量,类方法,接口和包名)

  1. 由 字母,数字,“_"下划线或"$"(美元符)组成
  2. 首字母不能是数字
  3. 不能是Java中的关键字命名:「Java中53个关键字的意义及使用方法」
  4. 严格区分大小写,命名时要注意
    5.要见名知意,使用驼峰命名规则(可以时中午,但不建议)

4.数据类型

基本数据类型

1.数值型:
整型:
byte 1个字节8位(-128-127)
short 2个字节16位(-215~215-1)
int 4字节32位(-231~-231-1)
long 8个字节64位(-263~263-1)
浮点型:
float 4字节32位(-2128~2128~1)
double 8个字节64位(-2^1024~21024-1)
字符
char 2个字节16位(0-65535)
布尔值
boolean 1个字节8位(true或false)
应用数据类型:string 数组 接口 类。。。
整型的直接量:int
浮点型的直接量:double

5.常量

在整个程序中数据的值不可改变

  1. 用final修饰
    2.常量名通常都是大写
    3.不同字母用下划线隔开
    4.只能被赋值一次,通常定义时就对其初始化

6.Scanner的使用

作用:获取键盘输入的信息

1.导入Scanner类
		import Java.util.*(通配符)
		import java.util.Scanner
2、创建Scanner对象
		Scanner scan = new Scanner(System.in);
3、获取键盘输入的数据
		int number = scan.nextInt();String str =scan.next();

7.类型转换

自动类型转换:从小类型到大类型
强制类型转换: 从大类型到小类型(强行转换时注意内存溢出或精度丢失)
整数的直接量可以赋给 byte short char,但不能超出它们对应的范围

8.运算符

1.赋值运算符 =

用于给变量赋值复合赋值运算符主要包括:+=,-=,*=,/=,%=

int i= 5;int j = 15;i = i+j;
//可以用i+=j; 
short s1 = 10;s1 = s1+10;(编译错误10为int类型,s1为short类型,int类型大于short类型,所以需要强转)
s1+=10//正确,可以自动强转,所以这样写更便于程序编译处理,性能也更好。

2.算数运算符

算术运算符包括:+ - * / % ++ --

/ 除法运算(如果两个数都是整数,结果也是整数,会舍弃小数部分,没有四舍五入,有一个数是浮点数,将进行自动类型转换,结果也是浮点数,保留小数部分)

举例:5/2=2;-5/2=-2;5.0/2=2.5;

% 取模运算

即取余运算)可以用来判断奇偶数偶数%20;奇数%21;

++自增

运算不管++在前还是在后,变量本身都加1++在前,整个表达式加1++在后,整个表达式的值不遍举例               int i =10;       int newNum =10*i++;       int i = 10;int newNum = 10*(++i);

-- 自减运算与自曾相同

3.关系运算符

== != > < >= <=

  1. 关系运算符的结果为boolean类型
  2. < >= <= 只支持数值类型的数据比较
    == != 支持所有类型数据的比较,包括数值类型,布尔类型,引用类型

4.逻辑运算符

  1. 逻辑运算符用于对两个布尔类型操作数进行运算,其结果还是boolean类型
  2. && 短路与,两边操作数都是true,结果为true
  3. || 短路或,两边只要有一个为true,结果为true
  4. ! 非,操作数为true,结果则是false,操作数为false,结果则是true
  5. & 逻辑与,两边操作数都是true,结果为true | 逻辑或,两边只要有一个为true,结果为true
  6. ^ 逻辑异或,两个操作数相同,结果为false,两个操作数不同,结果为true
    &与&&的区别:
  7. &&左侧操作数为false时,则将不会计算其右侧的表达式,也就是短路
  8. &,无论任何情况,&两侧的表达式都会参与计算

5.条件运算符(三元运算|三目运算)

语法结构:条件?表达式1:表达式2
条件是boolean类型的值 条件为true-->表达式1 条件为false-->表达式2

第二章:选择结构

1.if选择结构

1.基本if

if(判断条件成立){

​ //执行的代码块

​ }

2.if...else....

if(判断条件成立){

​ //条件成立要执行的代码

}else{

//判断的条件不成立要执行的代码

}

3.多重if

if(判断条件1){

​ //条件1成立要执行的代码块1;

}else if(判断条件2){

​ //条件2成立要执行语句;

}else if(判断条件3){

​ //条件3成立要执行语句;

}else{

​ //以上条件都不符合要执行的代码

}

4.嵌套if

f(外层判断条件){

​ if(内层判断条件){

​ }

}else{

​ if( 内层判断条件){

​ }

}

2.switch选择结构

switch语句主要用于精确的值进行判断

switch(要判断的属性){

​ case 值1:

​ //值1成立时要执行的代码;

​ break;(防止case的穿透性

​ case 值2:

​ //值2成立时要执行的代码;

​ break;(防止case的穿透性

​ default;

​ //以上条件都不成立时要执行的语句;

}

第三章:循环结构

**循环结构: **用来控制一个操作的重复执行,也就是反复执行一段相同的代码

while循环结构

do-while循环结构

for循环结构

循环三要素

1、循环变量的初始化

2、循环的条件(以循环变量为基础)

3、循环变量的改变(向着循环的结束变

1、while循环结构

语法:

while ( 循环条件 ) { //循环条件:布尔类型,结果为真,执行循环体,否则退出循环循环操作

​ //反复执行的代码块

}

2、do~while循环结构

语法:

do {

​ //循环操作

}while ( 循环条件 );

先执行一遍循环操作,分号不可少,符合条件,循环继续执行;否则,循环退出do while特点是条件无论是否满足,循环体至少被执行一次。

3、for循环结构

语法:

for(初始化表达式1;循环条件表达式;循环后的操作表达式){

​ //执行语句;

}

for循环的执行顺序

4、双重for循环

for(初始化表达式1;循环条件表达式1;循环后的操作表达式1){//外层循环

​ for(初始化表达式2;循环条件表达式2;循环后的操作表达式2){//内层循环

​ //执行语句;

​ }

}外层循环执行一次内层循环就全部循环完毕

5、break和continue关键词

break

结束最近的循环结构

continue

结束本次循环,继续下次循环

第四章:数组

1、概念:同一种类型数据的集合,其实数组就是一个容器

2、数组基本要素:

标识符:数组的名称,用于区分不同的数组

数组元素:向数组中存放的数据

元素下标:对数组元素进行编号,下标从0开始,数组中的每个元素都可以通过下标访问,数组的长度是固定的元素类型:数组中存放的数据类型,所有数据类型是一致的

3、数组的好处:可以给存储进来的元素自动进行编号,下标从0开始,方便操作这些数据。

4、数组的定义

声明一个变量就是在内存空间划出一块合适的空间

声明一个数组就是在内存空间划出一串连续的空间

格式1:元素类型[] 数组名 = new 元素类型[元素个数或数组长度];

示例:int[] arr = new int[5];

int [] arr,声明了一个int类型的数组变量,变量名为arr

int 表明该数组里面只能存储int类型的数据

[] :这是一个数组类型

arr:变量名

new int[5]; 创建了一个长度为5的int类型数组对象

new是创建对象的关键词

格式2:

元素类型[] 数组名 = new 元素类型[]{元素,元素,......};

int[] arr = new int[]{3,5,1,7};

int[] arr = {3,5,1,7};

注意:给数组分配空间时,必须指定数组能够存储的元素个数来确定数组大小。

创建数组之后不能修改数组的大小。可以使用length 属性获取数组的大小。遍历数组

数组元素根据类型不同,有不同的初始值

int 为 0

double 为 0.0

引用类型 为 null

5.数组的初始化

初始化方式1:不使用运算符new

int[] arr = { 1, 2, 3, 4, 5 };

int[] arr2 = new int[] { 1, 2, 3, 4, 5 };

初始化方式2:

int[] arr3=new int[3];

arr3[0]=1;

arr3[1]=5;

arr3[2]=6;

如果数组初始化中不使用运算符new。

需要注意:下列写法是错误的。i

nt[] arr;arr={1,2,3,4,5};

此时初始化数组,必须将声明,创建,初始化都放在一条语句中个,分开会产生语法错误。

所以只能如下写:

int[] arr={1,2,3,4,5};

6.遍历数组

数组中有一个属性可以获取到数组中元素的个数,也就是数组的长度. 数组名.length

public static void main(String[] args) {
    int[] x = { 1, 2, 3 };
    for (int y = 0; y < x.length; y++) {
        System.out.println(x[y]);
    }
}
posted @ 2021-05-15 21:45  一只打野  阅读(57)  评论(0)    收藏  举报