基础班总结 1、Java语言发展史 詹姆斯·高斯林1990年,与Patrick,Naughton和Mike Sheridan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。 JVM,JRE,JDK 总结一句话JDK包含JRE 和开发工具包 JRE 包含 核心类库和JVM 2、Java中数据类型的分类 基本数据类型 八大数据类型 整数类型:Byte short int lang 小数类型:float double 字符型:char 布尔型 boorlean 引用数据类型 类 ,数组,枚举(暂时没学),接口 3、数据类型转换 隐式转换 byte,short,char -- int -- long -- float -- double 强制转换: 目标类型 变量名 = (目标类型) (被转换的数据); 4、算数运算符++和- - 的用法++,--运算符:对变量做加1或者减1的操作。 ++或者--既可以放在变量的后面,也可以放在变量的前面。 单独使用的时候,++或者--无论是放在变量的前面还是后面,结果是一样的。 参与操作的时候: 如果++或者--在变量的后面,先拿变量参与操作,后变量做++或者-- 如果++或者--在变量的前面,先变量做++或者--,后拿变量参与操作 5、关系运算符包含以下内容: ==,!=,>,>=,<,<= 关系运算符的结果都是boolean型,也就是要么是true,要么是false。 6、逻辑运算符 逻辑运算符有哪些 &,|,^,! &&,|| 结论 &逻辑与:有false则false。 |逻辑或:有true则true。 ^逻辑异或:相同为false,不同为true。 !逻辑非:非false则true,非true则false。 &&和&的区别? a:最终结果一样。 b:&&具有短路效果。左边是false,右边不执行。 &是无论左边是false还是true,右边都会执行 ||和|的区别? a:最终结果一样 b:||具有短路效果.左边是true,右边不执行 |是无论左边是false还是true,右边都会执行 7、三元运算符 (关系表达式)?表达式1:表达式2; 如果条件为true,运算后的结果是表达式1; 如果条件为false,运算后的结果是表达式2; 8、键盘录入 Scanner sc = new Scanner(System.in); (导包) Int a = sc.nextInt(); (接收参数) 9、if三大語句 if语句第一种格式: if(关系表达式) { 语句体 } if语句第二种格式: if(关系表达式) { 语句体1; }else { 语句体2; } if语句第三种格式: if(关系表达式1) { 语句体1; }else if (关系表达式2) { 语句体2; 10、Switch switch语句格式: * switch(表达式) { * case 值1: * 语句体1; * break; * case 值2: * 语句体2; * break; * ... * default: * 语句体n+1; * break; * } 11、for循环 for(初始化语句;判断条件语句;控制条件语句) { 循环体语句; } 12、while循环语句格式 基本格式 while(判断条件语句) { 循环体语句; } 13、do…while循环语句格式基本格式 do { 循环体语句; }while((判断条件语句); 扩展格式 初始化语句; do { 循环体语句; 控制条件语句; } while((判断条件语句); 14、三种循环的区别虽然可以完成同样的功能,但是还是有小区别: do…while循环至少会执行一次循环体。 for循环和while循环只有在条件成立的时候才会去执行循环体 for循环语句和while循环语句的小区别: 使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。 15、break 退出当前循环 continue 退出本次循环 16、随机数 Random r = new Random(); (导包) – 获取随机数 int number = r.nextInt(10); (接收参数) 17、数组的定义 格式1:数据类型[] 数组名; 格式2:数据类型 数组名[]; 二维数组格式 定义格式 数据类型[][] 数组名; 数据类型 数组名[][]; 不推荐 数据类型[] 数组名[]; 不推荐 初始化方式 数据类型[][] 变量名 = new 数据类型[m][n]; 数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}}; 简化版格式:数据类型[][] 变量名 = {{元素…},{元素…},{元素…}}; 18、方法 方法的定义格式 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) { 函数体; return 返回值; } 18、方法重载的概述和基本使用在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。 方法重载特点 与返回值类型无关,只看方法名和参数列表 在调用时,虚拟机通过参数列表的不同来区分同名方法 方法重载:在同一个类中,出现了方法名相同的方法,这就是方法重载。 * 方法重载特点: * 方法名相同,参数列表不同。与返回值无关。 * 参数列表不同: * 参数的个数不同。 * 参数对应的类型不同。 * 注意:调用方法的时候,java虚拟机会通过参数列表的不同来区分同名的方法 19、方法的形式参数为基本数据类型方法的参数是基本类型的时候: 形式参数的改变不影响实际参数。 形式参数:用于接收实际数据的变量 实际参数:实际参与运算的变量 20、面向过程特点与面向对象特点A:面向过程: 强调的是过程,所有事情都需要自己完成 B:面向对象: 是一种更符合我们思想习惯的思想(懒人思想,我把事情自己不做,交给别人去做) 可以将复杂的事情简单化(对使用者来说简单了,对象里面还是很复杂的) 将我们从执行者变成了指挥者角色发生了转换 类和对象的概念 a:类:是一组相关的属性和行为的集合(我们班所有的同学都具备相同的属性和行为,比如:姓名,年龄,学习,这样就把所有的学生成为学生类) b:对象:是该类事物的具体体现(说某个同学时,他都具备自己特有的属性和行为) c:举例: 类 学生 对象 具体的某个学生就是一个对象 比如:车是一个类,具体的开的奔驰、宝马,就是对象 private关键字A:private关键字: a:是一个权限修饰符。 b:可以修饰成员(成员变量和成员方法) c:被private修饰的成员只在本类中才能访问。 this关键字A:this:代表所在类的对象引用 方法被哪个对象调用,this就代表那个对象 B:什么时候使用this呢 局部变量和成员变量重名 构造方法格式:A:构造方法格式 a:方法名与类名相同 b:没有返回值类型,连void都没有 c:没有具体的返回值 21、使用API步骤:A:打开帮助文档 B:点击显示,找到索引,看到输入框 C:输入你要查找的内容 D:看包 E:看类的描述 F:看构造方法 G:看成员方法 22、String类的判断功能 boolean equals(Object obj):比较字符串的内容是否相同 boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写 boolean startsWith(String str):判断字符串对象是否以指定的str开头 boolean endsWith(String str):判断字符串对象是否以指定的str结尾 String类的获取 String类的获取功能: * int length():获取字符串的长度,其实也就是字符个数 * char charAt(int index):获取指定索引处的字符 * int indexOf(String str):获取str在字符串对象中第一次出现的索引 * String substring(int start):从start开始截取字符串 * String substring(int start,int end):从start开始,到end结束截取字符串。包括start,不包括end String类的转换功能 char[] toCharArray():把字符串转换为字符数组 String toLowerCase():把字符串转换为小写字符串 String toUpperCase():把字符串转换为大写字符串 23、String和StringBuilder的区别: String的内容是固定的 StringBuilder的内容是可变的 StringBuilder类的常用方法 A:构造方法: StringBuilder() B:成员方法: public int capacity():返回当前容量 (理论值) public int length():返回长度(已经存储的字符个数) public StringBuilder append(任意类型):添加数据,并返回自身对象 public StringBuilder reverse():反转功能
|