初识Java
程序=程+序
计算机为了实现某种目的或执行某个操作而编写的一系列有序指令的集合
指令:向计算机发送的命令
关于Java
1995 Sun Oracle
JavaSE JavaEE
桌面程序和Internet程序
优点:简单易懂,完全的面向对象,健壮性,垃圾回收机制,一次编码到处使用(跨平台)
Java1.0 1.1 1.2 1.3 1.4 1.5 Java6 Java7(Java8)
编写Java程序的步骤
编写源程序-编译-运行
编程语言:为了方便人的使用而编制的一套语法规则,用这套规则可以向计算机发送指令。
源程序(源代码):使用编程语言编写的程序文本代码框架
注释
/**/ 多行注释
// 单行注释
/** */ 类注释/方法注释
\t \n \\ \" 转义字符
变量和运算符
变量 会变化的量-可以用来存储一个数据的内存空间
RAM random access memory 随机访问存储器,延伸为内存-一种高速、低容量、掉电丢失的存储器,为CPU存放计算数据
数据类型 决定变量的格式和变量占用内存的大小
基本数据类型:byte short int long float double char boolean
byte:1字节 表示范围-128~127
short:2字节 表示范围-32768~32767
int:4字节,表示范围从-2的31次方到2的31次方-1(大概是-21亿到正21亿)
long:8字节 表示范围从-2的63次方到2的63次方-1
float:4字节 表示最大数为10大约38次方,最小数为10的大概-38次方,有效数字7-8位
double:8字节,表示最大数为308次方,小数位数15-16位
char:2字节
boolean:1bit(8bit为1字节),只能取值true或者false
String运算符
表达式:计算式,使用变量、常量和运算符来表示计算过程的式子,例如int c = a+b;a+b就是一个表达式
运算符:表达式中用来表示数据操作的符号
操作数:表达式中用来表示被操作数据的名称或者常数
赋值运算符:复制+覆盖 =
算术运算符
+ - × / %
自增运算符: ++
自减运算符: --
int x = 10;
int y = x++ + ++x;//int y = 10 + ++x; int y = 10 + 12;
int z = ++x + x++;//int z = 13 + 13 ;
简单条件结构
boolean
变量类型的一种,它只存储true或者false,用来记录成立或不成立的数据,例如开关
boolean a=1>2;
boolean a = 1;
boolean a = 1!=2;
boolean a = false;
boolean a = 1>2 && 3<5;
关系运算符
> < >= <= == !=
if(条件){
}
逻辑运算符
&& || !
if-else
if(条件){
}else{
}
复杂条件结构
嵌套if
语法:
if(条件1){
if(条件2){
if(条件4){
}
}else{
}
}else{
if(条件3){
}else{
}
}
作用:判断过程为多个条件,而且必须先满足第一个条件后才有判断第二个条件的必要
多重if
作用:多条件判断时,例如区间判断
语法:
if(条件1){
}else if(条件2){
//“条件1不成立”并且条件2成立时执行
}else if(条件3){
//“条件1、2都不成立”并且条件2成立时执行
}else{
//所有条件都不成立时执行的代码
}
switch
作用:等值判断
语法:
switch(类型为整型或者字符型的表达式){
case 1:
//条件计算结果为1的时候执行的代码
break;
case n:
break;
default:
//没有任何匹配的case时执行的代码
}
循环1
循环的要素:循环条件 循环操作
while
while(循环条件){
//循环操作
i++;
}
do-while
do{
//循环操作
}while(循环条件);
循环2
for
for(初始化;循环条件;迭代){
//循环体
}
循环四个要素:初始值 循环条件 迭代 循环内容
break
跳出当前循环
continue
跳过当次循环
数组
数组的概念
一组同类型的数据表示方式,例如30个人的成绩,批量
定义数组
数据类型[] 数组名= new 数据类型[数组长度];
数据类型 数组名[] = new 数据类型[数组长度];
数据类型[] 数组名 = new 数据类型[]{元素列表}
数据类型[] 数组名 = {元素列表};
初始化数组
数组的基本操作(算法)
元素:数组中的一个数据
索引:元素在数组中的位置,从0开始,又叫下标
关于数据的操作算法的实现:
1、输出所有数据
2、排序
3、最大最小值
4、逆序输出
5、删除元素
6、添加元素
7、指定位置插入
引用数据类型
引用数据类型VS基本数据类型
引用:记录的是地址,不存放真实数据,new出来的对象真正存放数据,引用只负责指向这个对象
基本数据类型:就是一个存放数据的单元
多重循环
字符串的顺序插入
comparesTo()
双重循环
类和对象
对象:万物皆对象,程序中要描述的所有事物都可以成为对象,具有特定特征和行为的实体
属性:对象的静态特性
行为:对象的功能,对象的动态特征
抽象:提取关键信息的过程
封装:打包使之用起来像整体,但是又不失去灵活性功能
类:具有相同行为和属性的一组对象的集合(模型、蓝图)
对象是实际存在的实体,类是对象的类型,是所有对象的共同描述,对象是类的实际表现。
对象的创建和方法及属性的调用
public class Xxx{
属性
数据类型 属性名;
方法
访问修饰符 返回值类型 方法名(参数列表){方法体}
}
局部变量和全局变量(字段变量)
局部变量在方法内定义,全局变量在类中定义。
局部变量必须先赋值后使用,全局变量有默认值。
局部变量值在定义它的方法内有效,全局变量在整个类范围都有效。
局部变量具有更高的优先级,同名时优先使用局部变量。
类的无参方法
方法的定义
方法的调用
本类中调用其他方法:直接调用
其他类中调用方法:必须创建对象后通过.方法名调用
方法的返回值
返回:去和回
去:方法的调用,流程会自动进入被调用方法内部执行
回:被调用方法流程执行完毕,回到调用方法处继续往下执行
有返回值的方法,方法体中必须return 对应类型的值
没有返回值的方法(void),方法中不能使用return 返回任何值
有返回值的方法,调用者可以接收到对应类型的数据,也可以不接受
没有返回值的方法,调用者不可能接受到数据
有参方法1
方法的参数
去的时候带的礼物,被调用方法可以使用
传参:突破局部变量只能在一个方法中使用的局限
形参和实参,传参
形参:定义方法时表示接受的变量的参数,在方法中可以当局部变量使用
实参:有调用者创建,为形参提供具体的值
多个参数
定义方法和调用方法时参数的类型、顺序,个数都必须一一对应
有参方法2
引用类型作为返回值
引用传参
字符串-不变性
字符串的定义和实例化
字符串的操作
基本操作equals toUpperCase toLowerCase equalsIgnoreCase concat split
搜索字符串 indexOf lastIndexOf
截取字符串 substring trim
StringBuffer的使用:提供对字符串的操作功能,例如insert
toString()
append()
insert()
程序=程+序
计算机为了实现某种目的或执行某个操作而编写的一系列有序指令的集合
指令:向计算机发送的命令
关于Java
1995 Sun Oracle
JavaSE JavaEE
桌面程序和Internet程序
优点:简单易懂,完全的面向对象,健壮性,垃圾回收机制,一次编码到处使用(跨平台)
Java1.0 1.1 1.2 1.3 1.4 1.5 Java6 Java7(Java8)
编写Java程序的步骤
编写源程序-编译-运行
编程语言:为了方便人的使用而编制的一套语法规则,用这套规则可以向计算机发送指令。
源程序(源代码):使用编程语言编写的程序文本代码框架
注释
/**/ 多行注释
// 单行注释
/** */ 类注释/方法注释
\t \n \\ \" 转义字符
变量和运算符
变量 会变化的量-可以用来存储一个数据的内存空间
RAM random access memory 随机访问存储器,延伸为内存-一种高速、低容量、掉电丢失的存储器,为CPU存放计算数据
数据类型 决定变量的格式和变量占用内存的大小
基本数据类型:byte short int long float double char boolean
byte:1字节 表示范围-128~127
short:2字节 表示范围-32768~32767
int:4字节,表示范围从-2的31次方到2的31次方-1(大概是-21亿到正21亿)
long:8字节 表示范围从-2的63次方到2的63次方-1
float:4字节 表示最大数为10大约38次方,最小数为10的大概-38次方,有效数字7-8位
double:8字节,表示最大数为308次方,小数位数15-16位
char:2字节
boolean:1bit(8bit为1字节),只能取值true或者false
String运算符
表达式:计算式,使用变量、常量和运算符来表示计算过程的式子,例如int c = a+b;a+b就是一个表达式
运算符:表达式中用来表示数据操作的符号
操作数:表达式中用来表示被操作数据的名称或者常数
赋值运算符:复制+覆盖 =
算术运算符
+ - × / %
自增运算符: ++
自减运算符: --
int x = 10;
int y = x++ + ++x;//int y = 10 + ++x; int y = 10 + 12;
int z = ++x + x++;//int z = 13 + 13 ;
简单条件结构
boolean
变量类型的一种,它只存储true或者false,用来记录成立或不成立的数据,例如开关
boolean a=1>2;
boolean a = 1;
boolean a = 1!=2;
boolean a = false;
boolean a = 1>2 && 3<5;
关系运算符
> < >= <= == !=
if(条件){
}
逻辑运算符
&& || !
if-else
if(条件){
}else{
}
复杂条件结构
嵌套if
语法:
if(条件1){
if(条件2){
if(条件4){
}
}else{
}
}else{
if(条件3){
}else{
}
}
作用:判断过程为多个条件,而且必须先满足第一个条件后才有判断第二个条件的必要
多重if
作用:多条件判断时,例如区间判断
语法:
if(条件1){
}else if(条件2){
//“条件1不成立”并且条件2成立时执行
}else if(条件3){
//“条件1、2都不成立”并且条件2成立时执行
}else{
//所有条件都不成立时执行的代码
}
switch
作用:等值判断
语法:
switch(类型为整型或者字符型的表达式){
case 1:
//条件计算结果为1的时候执行的代码
break;
case n:
break;
default:
//没有任何匹配的case时执行的代码
}
循环1
循环的要素:循环条件 循环操作
while
while(循环条件){
//循环操作
i++;
}
do-while
do{
//循环操作
}while(循环条件);
循环2
for
for(初始化;循环条件;迭代){
//循环体
}
循环四个要素:初始值 循环条件 迭代 循环内容
break
跳出当前循环
continue
跳过当次循环
数组
数组的概念
一组同类型的数据表示方式,例如30个人的成绩,批量
定义数组
数据类型[] 数组名= new 数据类型[数组长度];
数据类型 数组名[] = new 数据类型[数组长度];
数据类型[] 数组名 = new 数据类型[]{元素列表}
数据类型[] 数组名 = {元素列表};
初始化数组
数组的基本操作(算法)
元素:数组中的一个数据
索引:元素在数组中的位置,从0开始,又叫下标
关于数据的操作算法的实现:
1、输出所有数据
2、排序
3、最大最小值
4、逆序输出
5、删除元素
6、添加元素
7、指定位置插入
引用数据类型
引用数据类型VS基本数据类型
引用:记录的是地址,不存放真实数据,new出来的对象真正存放数据,引用只负责指向这个对象
基本数据类型:就是一个存放数据的单元
多重循环
字符串的顺序插入
comparesTo()
双重循环
类和对象
对象:万物皆对象,程序中要描述的所有事物都可以成为对象,具有特定特征和行为的实体
属性:对象的静态特性
行为:对象的功能,对象的动态特征
抽象:提取关键信息的过程
封装:打包使之用起来像整体,但是又不失去灵活性功能
类:具有相同行为和属性的一组对象的集合(模型、蓝图)
对象是实际存在的实体,类是对象的类型,是所有对象的共同描述,对象是类的实际表现。
对象的创建和方法及属性的调用
public class Xxx{
属性
数据类型 属性名;
方法
访问修饰符 返回值类型 方法名(参数列表){方法体}
}
局部变量和全局变量(字段变量)
局部变量在方法内定义,全局变量在类中定义。
局部变量必须先赋值后使用,全局变量有默认值。
局部变量值在定义它的方法内有效,全局变量在整个类范围都有效。
局部变量具有更高的优先级,同名时优先使用局部变量。
类的无参方法
方法的定义
方法的调用
本类中调用其他方法:直接调用
其他类中调用方法:必须创建对象后通过.方法名调用
方法的返回值
返回:去和回
去:方法的调用,流程会自动进入被调用方法内部执行
回:被调用方法流程执行完毕,回到调用方法处继续往下执行
有返回值的方法,方法体中必须return 对应类型的值
没有返回值的方法(void),方法中不能使用return 返回任何值
有返回值的方法,调用者可以接收到对应类型的数据,也可以不接受
没有返回值的方法,调用者不可能接受到数据
有参方法1
方法的参数
去的时候带的礼物,被调用方法可以使用
传参:突破局部变量只能在一个方法中使用的局限
形参和实参,传参
形参:定义方法时表示接受的变量的参数,在方法中可以当局部变量使用
实参:有调用者创建,为形参提供具体的值
多个参数
定义方法和调用方法时参数的类型、顺序,个数都必须一一对应
有参方法2
引用类型作为返回值
引用传参
字符串-不变性
字符串的定义和实例化
字符串的操作
基本操作equals toUpperCase toLowerCase equalsIgnoreCase concat split
搜索字符串 indexOf lastIndexOf
截取字符串 substring trim
StringBuffer的使用:提供对字符串的操作功能,例如insert
toString()
append()
insert()