标签:length 定义 header 字节 tac char 名称 字符 要求
Java的内存需要划分成为5个部分:
栈(Stack): 存放的都是方法中的局部变量。方法的运行一定要在栈当中运行
局部变量: 方法的参数, 或者是方法 {} 内部的变量
作用域: 一旦超出作用域,立刻从栈内存当中消失
堆(Heap): 凡是new出来的东西,都在堆当中
堆内存里面的东西都有一个地址值: 16进制
堆内存里面的数据,都有默认值, 规则:
? 如果是整数 默认为 0
? 如果是浮点数 默认为 0.0
? 如果是字符 默认为 ‘\u0000‘
? 如果是布尔 默认为 false
? 如果是引用类型 默认为null
方法区(Method Area) : 存储.class相关信息,包含方法的信息
本地方法栈(Native Method Stack): 与操作系统相关。
寄存器 (Pc Register): 与CPU相关
特点: 完全小写的字母 (在编译器中,一般有颜色 ( 但是有颜色不一定就是关键字))
//
单选注释/**/
多行注释常量: 在程序运行期间,固定不变的量
常量的分类:
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
字节型 | byte | 1个字节 | -127-127 |
短整型 | short | 2个字节 | -32768-32767 |
整型 | int (默认) | 4个字节 | -2^31 ~ 2^31-1 |
长整型 | long | 8个字节 | -2^63 ~ 2^63-1 |
单数度浮点数 | float | 4个字节 | 1.4013E-45 ~ 3.4028E+38 |
双精度浮点数 | double (默认) | 8个字节 | 4.9E-324 ~ 1.7977E+308 |
字符型 | char | 2个字节 | 0-65535 |
布尔类型 | boolean | 1个字节 | true, false |
格式: 条件 ?表达式A : 表达式B
/*
方法其实就是若干语句的功能的集合
定义方法的完整格式:
修饰符 返回值类型 方法名称(参数类型 参数名称 ....) {
方法体
return 返回值; // 如果 返回值类型为void ,则 return 可以不用写,或者直接return就行,不要再写其他的了
} */
public class DefindMethod {
public static void main(String[] args) {
int res = sum(5, 10);
System.out.println(res);
methodC(5, 20);
}
// 求两个数的和
public static int sum(int a, int b) {
int result = a + b;
return result;
}
}
重载方法
/*
方法的重载(OverLoad): 多个方法的名称一样,但是参数列表不一样
好处: 只需要记住唯一一个方法名称, 就可以实现类似的多个功能
*/
public class OverLoadMethod {
public static void main(String[] args) {
Sum(10, 20, 30);
Sum(10, 20, 30, 40);
}
public static void Sum(int a, int b) {
int res = a + b;
}
public static void Sum(int a, int b, int c) {
int res = a + b + c;
}
}
数组的概念: 是一种容器,可以同时存放多个数据值
访问数组: 数组名称[索引] // 从0开始
数组的特点:
1. 数组是一种引用数据类型
2. 数组当中的多个数据,类型必须统一
3. 数组的长度在程序运行期间不可改变
数组的初始化: 在内存当中创建一个数组,并且向其中赋予一些默认值
两种常见的初始化方式:
1. 动态初始化 (指定长度)
2. 静态初始化 (指定内容) ps: 没有直接指定长度,但是依然会自动推算得出长度
动态初始化数组的格式:
数据类型[] 数组名称 = new 数据类型[数组长度]
静态初始化数组的格式:
数据类型[] 数组名称 = new 数据类型[] {元素1, 元素2, ...};
public class Demo01Array {
public static void main(String[] args) {
/*
动态初始化数组
*/
// 创建一个数组, 能存放300个int类型的数据
int[] arrayA = new int[300];
// 创建一个数组, 能存放5个字符串
String[] arrayS = new String[5];
/*静态初始化数组*/
// 直接创建一个数组,里面装的全部都是int 类型的数据, 具体为: 1, 5, 20, 30
int[] arrayI = new int[] { 1, 5, 20, 30 };
// 使用省略格式,创建一个装有: "hello" "world" "java" 的数组
String[] arrayS2 = { "hello", "world", "java" };
System.out.println(arrayS2); // 直接打印数组名称, 得到的是数组对应的 内存地址的哈希值 // [Ljava.lang.String;@1b6d3586
System.out.println(arrayS2[0]); // hello 访问数组的第一个元素
}
}
求数组的长度: array.length
public class TraverseAarray {
public static void main(String[] args) {
int[] arrayA = {1, 2, 5, 6, 9};
// 遍历数组
for (int i=0; i<arrayA.length; i++) {
System.out.println(arrayA[i]);
}
}
}
标签:length 定义 header 字节 tac char 名称 字符 要求
原文地址:https://www.cnblogs.com/nichengshishaonian/p/11965563.html