Java复习总结
第一章
1. 怎么写第一个Java程序。如:Hello World!
注意:Java区分大小写,类名的注意事项,注释。
第二章
一.数据类型
Java中数据类型:
(1)基本数据类型:3类8种
数值型:byte,short,int,long,float,double
字符型:char
布尔型:boolean
(2)引用数据类型:3类
类
数组
接口(没学,特别重要)
拓展:
每个基本数据类型,占用多少空间
byte 占1个字节,8位。-2的7次幂~2的7次幂-1.(-128~127)
short 占2个字节,16位。-2的15次幂~2的15次幂-1.(-32758~32767)
int 占4个字节,32位。-2的31次幂~2的31次幂-1. long 占用8个字节,64位。-2的63次幂~2的63次幂-1.
char 占2个字节。
float 占4个字节
double占8个字节。
注意:
JA V A中默认的整数为int类型,默认的小数为double类型
二.变量
变量:在计算机程序用于存储信息(内容,数据)。
1.量的声明:
两种声明方式:
(1)数据类型变量名= 对应值;//声明变量的同时赋值
(2)数据类型变量名;//声明变量
变量名= 对应值;//为变量赋值
2. 变量的命名规则:
(1)变量必须以字母,下划线“__”或“$”符号开头,变量名不可与关键字冲突(不满足为错误)。
(2)变量名要有一定的意义,若变量名由多个单词组成,第一个单词首字母小写,别的单词首字母大写(不满足为不专业)。
注意:
JA VA中所有的变量,必须先赋值,再使用
三.运算符
赋值运算符:“=”从右到左,把灯好右边的内容赋值给等号右边(等号左边的内容必须是一个变量)。
算术运算符:加“+”,减“-”,乘“*”,除“/”,取余“%”
注意:
(1)除“/”:除法的结果与除法两边数据类型有关,若两边为整型,结果忽略小数,取整数如:10 / 3 = 1;
(2)取余“%”:取余的结果,正负号,与运算符的第一个参数正负一致如:-10 % 3 = -1;-10 % -3 = -1;10 % -3 = 1;
(3)在JA V A中,“+”除了表示加法,还表示字符串的连接,数字类型与字符串用“+”连接,结果为字符串。
四类型转换
(1)自动类型转换:等号右边的数据内容,小于等号左边的数据类型。
(2)强制类型转换:把大的数据类型赋值给小的时候,如double赋值与int此时需要强制类型转换。
double a = 12.5;
强制转换后
int r = (int) 12.5;
System.out.println(r);
结果是:12
注意:
多个变量参加算术运算,其结果的数据类型与其中最
大的数据类型一致,若有小数参加的运算,结果一定
为double。
第三章
一.Boolean类型
有两个值,真(true)和假(false),在程序出现正反面是使用boolean isBig ;声明一个Boolean类型的变量
二.从键盘输入内容
三步骤:
(1)import java.util.Scanner //引包
(2)Scanner input =newScanner(System.in);
创建Scanner变量
(3)input.next();接受用户输入
集中数据类型的输入方法:
String(字符串):input.next();
Int(整型): input.nextInt();
Double(小数型): input.nextDouble();
三.关系运算符
大于“>”,小于”<”,等于”==”,不等于”!=”,大于等于”>=”,小于等于”<=”
四.If语句条件判断
(1)if(表达式){
语句;
}
特点:只关心条件成立
(2)if(表达式){
语句1;//条件成立
}else{
语句二;//条件不成立
}
特点:一般情况下,不管条件成立与否,总会有结果执行(3)if(表达式1){
语句1;
}else if(表达式2){
语句2;
}else if(表达式3){
语句3;
}else{
语句4;
}
else if可以是任意数量
表达式是Boolean类型
特点:使用时,不同条件,需要不同的处理结果。
if两种特殊的使用方式:
if的并列:
if(){
}
if(){
}
if的嵌套:
if(){
if(){
if(){
}
}
}
注意:嵌套的层数不能太深,不能超过3层。
注意:1. if中间的条件,不能使用浮点运算做等式比较。
结果为:你给我100万
2.if-else if语句中有多个条件同时为true时,只执行第一次
成立的内容。
五.Switch
switch(表达式){
case 常量1;
语句;
break;
case 常量2;
语句;
break;
default:
语句;
}
特点:用于条件较多和If语句相似,但是switch结构的条件只能等值判断,而且只能是整型或字符型的等值判断注意:
1.switch条件中的内容只能是(byte,short ,int,char,enum
2.switch中default不一定就必须放到最后,switch中default 不加break是因为,他放在了最后,而不是他不需要放break,如果case放到最后,也可以不加break。
3.如果case或default不加break,他会依次向下执行。
4.case不能重复。
六.字符串的比较
两个字符串内容的比较,不可以用==,必须用equals
语法:字符串1.equals字符串2
注意:若两个字符串中的内容相同,返回true,否则返回false,也就是说equals的返回结果是个Boolean类型;
字符串与字面量比较时,字面量放在前面,变量在后七.逻辑运算符
“&&”与,“||”或,“!”非
第4章循环结构(一)
一. 循环概念:重复的做某一件事。
二.while循环:
while 循环的特点:先判断,后执行。
While(){
循环体;
}
注意:while循环中间的条件是boolean
三.do-while循环:
do{
循环体;
} while(条件判断);
do-while 循环的特点:先执行,后判断,至少执行一次。
四.调试步骤:
1.首先,再容易出现错误的地方设置“断点”;
2.DebugAs ——Java——Application
3.切换到debug视图
具体调试:
调试程序前,需要在容易出错的代码上方设置断点。如图
4.逐步执行快捷键
第5章循环结构(二)
一.for循环
特点:先判断,后执行。
语法:for(表达式1;表达式2; 表达式3){
表达式4;
}
注意:执行顺序:1~2~4~3~2~4~3~2~4~3~2~4~3….
注意:死循环。
break与continue
break终止循环。
continue终止本次循环,继续下次循环。
二.Java中的循环对比
while特点:先判断后执行。
do-while:先执行,后判断,至少执行一次。
for循环:先判断,后执行,一般由于循环次数固定。三.多个断点之间进行调试
断点与断点之间的调试:F8
退出调试:Ctrl+F2
进入某个方法的内容:F5
退出某个方法:F7
第六章.对象和方法
1.什么是对象,什么是类?
类是模板,是抽象;对象是实例,是具体的。
把用类创建对象的过程叫做实例化。
2.面向对象的特性:抽象,封装,继承,多态。(要有顺序性)
3.封装:目前学习中,封装就是把某一类事物的属性和方法写在一起,封装到一个类中。
4.创建类和对象
创建一个类
使用一个类创建一个对象
结果:
创建对象与使用对象的步骤:
创建对象:类名对象名= new 类名();
使用对象:对象名.属性;
对象名.方法();
5.toString()
在打印语句中,如果直接打印“对象名”,默认调用此对
象的toString();方法。
题:
创建类
使用类创建对象:
运行结果:
第七章. 类的方法
1.类的方法的定义.
public 方法返回值方法名(方法的参数列表){
方法体;
}
注意:方法的返回值类型与方法名必须挨着,中间不能有内容。
2.区分属性和方法:属性不带括号,方法带小括号。
3.方法的命名:
①. 遵循驼峰命名法。第一个单词的首字母小写,其
他单词的首字母大写。
②. 方法名一般是动名词,方法名要有意义。
checkUser();
③. 如果是判断是否的方法以is开头,这种方法的返
回值是boolean类型。isEmail();
4.return关键字
含义:在方法中出现,表示退出此方法,此方法已结束,return后面的语句“一般”都不执行(注意:finally除外)。
注意:
①.return 后面的内容与方法的返回值类型有关,必
须与返回值类型一致。
②.如果方法的返回值类型是void时,也可以使用
return语句,但是return 后面不能写任何值。
③.如果方法的返回类型不是void,那么必须保证方
法中return语句,要覆盖到所有情况,至少要有一个
return,多不限。
5.方法的调用
语法:对象名.方法();
注意:
目前学习中:
①.在两个或多个类中,方法调用必须通过创建对
象,
②.在一个类中,一个方法可以直接调用另一个方
法。(目前学习的常规方法:实例方法)
题:
6.文档注释:一般出现在类,方法,属性前。可以利用工具自动生成帮助文档。
/**
*/
7.包:
用于组织程序。
根据功能区分不同的程序。
package表示创建包,注意后面有分号。
import 引包语句。
import java.util.Scanner;与import java.util.*;的区别。
8.包的命名:所有的包名必须小写,域名倒转。
域名.公司名.工程名.模块名….;
域名:com(商业),org(组织),cn(中国),net(网站,组织,公司等)…..
例:com.tangcheng.studentsystem.service;
注意:以后创建工程,第一步,就要创建包。
这两种导包方式,推荐“第一种”。
9.变量的作用域(理解记忆)
在一个大括号中定义的变量,只能在这个大括号中使用。
注意:
1. if for while do-while 中省略大括号的形式。
2. 编程时,变量定义的范围尽可能最小化,节省资
源效率,尽可能不定义成属性。
第八章. 数组
1.数组的特点:存储的数据类型一致,长度固定,在内存存储为连续的一段空间。
2.数组的声明:
①.数据类型[] 变量名= new 数据类型[长度];
②.数据类型变量名[] = new 数据类型[长度]; //不
推荐使用
③.数据类型[] 变量名= {数组中的元素1,数组中的
元素2,数组中的元素3};
④.数据类型[] 变量名= new 数据类型[ ] {数组中的元
素1,数组中的元素2,数组中的元素3};
3.数组的默认值(与属性的默认值一致)
整型[]默认值为:0
浮点型[]默认值为:0.0
引用数据类型[] 默认值为:null
boolean[]默认值为:false
4.获取数组的长度,利用的数组的length属性。
题:求平均分
结果:
题:获得数组的长度
结果:
题:最大值与最小值:
结果:
5.数组排序
①. A rrays为数组的工具类,这个为java.util包中。
②. A rrays.toString(数组名); 作用:按照某种方式显示数
组,只用于测试打印。
③. A rrays.sort(数组名);作用:为数组排序。
题:
注意:如果不引包,也想使用此包中的内容,可以写包的全路径。如图:
第9章
1. 字面量:就是一个值,没有名称的量。例如:100;'我';“我们”
2. 字符串的创建:
1. 第一种:直接赋值(第2章就接触过的方法)
语法:String 变量= 字符串字面量;
如:String name = “同学”;
2.第二种:(在java中,字符串被作为String类型的
对象来处理,所以可以用第6章创建对象的知识来
创建一个字符串)面向对象方式
语法:String 变量名= new String(字符串字面量);
如:String name = new String(“同学”);