java语法基础
1、位运算符
左移<<: 左边最高位丢弃,右边补齐0,相当于把数据乘以2的移动次幂
右移>>: 最高位是0,左边补齐0;最高位是1,左边补齐1,相当于除以2的移动次幂
无符号右移>>>:无论最高位是0还是1,左边补齐0
2、键盘录入
1、导入包:
import java.util.Scanner;
2、创建键盘录入对象
Scannery sc = new Scanner (system.in);
new:分配内存空间
3、通过对象获取数据
(提示输入)System.out.println(“请输入一个数据”)
int x =sc.nextInt();
3、方法
完成特定功能的代码块
格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…..){
方法体语句;
return 返回值;
}
修饰符:public static 等
返回值类型:就是功能结果的数据类型
方法名:符合命名规则即可。方便我们调用。
参数:
实际参数:就是实际参与计算的
形式参数:就是方法定义上的,用于接收实际参数的
方法不调用不执行
4、一维数组
定义格式
- 数据类型[] 数组名
数据类型 数组名 []
效果一样,但是一般使用第一种
初始化方式
- 动态初始化:初始化时只指定数组长度,由系统为数组分配初始值
-
- 格式(举例):int[] arr = new int[3]
- new :为数组分配内存空间
- arr : 为名字
- 3:数组长度,即元素的个数
- 静态初始化:初始化时指定每个数组元素的初始值,有系统决定数组长度
-
- 格式(举例):int[] arr = new int[]{1,2,3}
- 简化后格式 :int[] arr = {1,2,3}
-
- {1,2,3}:为元素
一维数组操作
- arr.length :返回数组长度
- 遍历数组的方法:
5、二维数组
定义格式:
//格式1,静态,下面三种方式都一样
int[][] arr = new int[3][2]; //推荐使用
int arr[][] = new int[3][2];
int[] arr[] = new int[3][2];
//格式2,动态,
int[][] arr = new int[3][];
arr[0] = new int[2];//为每一行分配长度
arr[1] = new int[3];
arr[2] = new int[1];
//格式3
int[][] arr = new int[][]{{1,2,3},{4,5},{6}};
//格式3简化版
int[][] arr = {{1,2,3},{4,5},{6}};
遍历
用双循环
6、java中内存分配和堆栈的区别
注意:栈内存的两个引用指向同一个堆内存空间时,无论是他们谁的操作,都是针对同一个地方
java中的参数传递问题:
-
- 基本类型:形式参数的改变对实际参数没有影响
- 引用类型:形式参数的改变直接影响实际参数