IDEA版
1.IDEA生成基础命令
快速生成main()方法 psvm回车
快速生成输出语句 sout回车
注释:
单行:选中代码,Ctrl+/ 再来一次就是取消
多行:选中代码,Ctrl+shift+/ 再来一次就是取消
格式化Ctrl+Alt+L
2.数组
数组是一种用于存储多个相同类型数据的存储模型
数据类型[] 变量名
int [] arr
定义了一个int类型的数组,数组名是arr
int[] arr = new int[3];
int:说明数据中的元素类型是int
[]:说明这个是一个数组
arr:这是数据的名称
new:为数组申请内存空间
int:说明数组中的元素是int类型
[]:说明这是一个数组
3:数组长度,其实就是数组中元素的个数
数组变量访问方式 :数组名
数组内部保存的数据的访问方式 :数组名[索引]
索引是数组中数据的编号方式
作用:索引用于访问数组中的数据使用,数组名[索引]等同于变量名,是一种特殊的变量名
特征1:索引从0开始
特征2:索引都是连续的
特征3:索引逐一增加,每次加1
int[] arr = new int[5];
System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);
System.out.println(arr[4]);
数组在初始化时,会为存储空间添加默认值
整数默认值是0
浮点数默认值是0.0
布尔值默认值是false
字符默认值是空字符
引用数据类型默认值是null
3.java中内存分配
栈内存:存储局部变量
定义在方法中的变量如arr 使用完毕立刻小时
堆内存:存储new出来的内容(实体和对象)
每一个new出来的东西都有一个地址值
使用完毕,会在垃圾回收器空闲时被回收
多个数组:
int[] arr = new int[3];
int[] arr2 = new int[4];
System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr2[0]);
arr[0] = 100;
arr[1] = 300;
arr[2] = 200;
arr2[0] = 100;
System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr2);
System.out.println(arr2[0]);
输出为[I@4554617c
100
300
200
[I@74a14482
100
4.数组初始化之静态初始化
静态初始化:初始化时指定每个数组元素的初始值,由系统觉得数组长度
简化格式:数据类型[] 变量名 = {数据1,数据2,数据3};
索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题:ArrayIndexOutOfBoundsException
空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常:NullPointerException
null:空值,引用数据类型的默认值,表示不指向任何有效对象
public class tese1 {
public static void main(String[] args) {
int[] arr = {11,22,33,44,55};
for (int x = 0;x<5;x++){
System.out.println(arr[x]);
}
}
}
int[] arr = {。。。};
for{int x = 0,x<arr.length,x++};
System.out.println(arr[x]);
获取数组元素数量
格式:数组名.length 例如:arr.length
获取最大值:
public class tese1 {
public static void main(String[] args) {
int[] arr = {5,4,3,2,6};
int max = arr[0];
for (int x = 1;x<arr.length;x++){
if(arr[x] > max){
max = arr[x];
}
}
System.out.println("max:" + max);
}
}
输出为max:6
5.方法
方法是将具有独立功能的代码块组织成为一个整体,使其具有特俗功能的代码集
方法必须先创建才可以直接是哦那个,该过程成为方法定义
方法创建后不是直接运行的,需要手动使用后才执行,该过程为方法调用:在main方法调用fangfa
public class tese1 {
public static void main(String[] args) {
fangfa();
}
public static void fangfa() {
int x = 5;
if (x % 2 == 0) {
System.out.println(true);
} else {
System.out.println(false);
}
}
}
比较大小
public class tese1 {
public static void main(String[] args) {
bijiao();
}
public static void bijiao() {
int s = 5;
int b = 6;
if (s>b) {
System.out.println(s);
}else {
System.out.println(b);
}
}
}
形参:方法定义中的参数,等同于变量定义格式 如:int number
实参:方法调用中的参数,等同于使用变量或常量,如:10 number
调用方法的时候,要几个就给几个,要什么类型就给什么类型