##第一章 JAVA简介##
-
1.什么是java
- java语言于1995年Sun公司推出。
- java程序代码经过编译(编译器完成)后转换成一种成为字节码的中间语言;
- java虚拟机(JVM)将对字节码进行解释和运行,编译只进行一次,而解释在每次程序运行时都会进行。
-
2.Java的版本
- Java SE:Java的标准版本,是Java的基础,包含了Java语言的基础、JDBC操作、I/O、网络通信、多线程等技术,主要用于桌面应用程序的开发。
- Java EE:Java的企业版,主要用于开发企业级分布式的网络程序,如电子商务网站等。
- Java ME:Java的迷你版本,主要用于嵌入式系统开发。
-
3.Java语言的特性
-
简单:
语法规则和C++类似;用接口替代了多重继承,取消了指针,实现了垃圾自动回收机制;提供了丰富的类库和API文档,还有大量的基于Java的开源项目。 -
面向对象:
面向对象是Java语言的基础,Java语言最外部的数据内型是对象,所有的元素都要通过类和对象来访问。 -
分布性:
Java的分布性包括操作分布和数据分布,操作分布是指在多个不同的主机上布置相关操作,而数据分布是将数据分别放在多个不同的主机上。
其他的特点包括:可移植性、安全性、解释型、健壮性、多线程、动态等。
-
-
4.其他一些知识
搭建Java环境,配置环境变量等
##第二章 JAVA语言基础##
-
1.基本数据类型
- 数值型:
-
整型:包括byte,short,int,long
-
浮点型:包括float,double
细节: 八进制数以0开头,十六进制数以0x开头; 赋给long型的值若大于int(max)或小于int(min),后缀加L float需要加后缀F或f。
-
- 字符型:char
细节:单引号引表示字符,双引号表示字符串 - 布尔型:boolean,只有两个值true和false
- 数值型:
-
2.标识符和关键字
标识符由下划线、美元符号、数字和字母组成
关键字是Java语言中被赋予特定意义的一些单词 -
3.变量和常量
-
声明常量:final 数据类型 常量名[=值]
-
变量:
- 成员变量:在类体中所定义的变量被称为成员变量,成员变量在整个类中都有效。成员变量可以分为静态变量和实例变量。
- 静态变量的有效范围可以跨越类,甚至在整个应用程序之类。除了能在定义它的类中使用,还可以用“类名.静态变量”的方法在其他类中调用。
-
-
4.运算符
- 赋值运算符:= += -= *= /=
- 算数运算符:+ - * / ++ – %(取余数)
- 比较运算符:> < >= <= == !=
- 逻辑运算符:& | && || !
- 位运算符:<< >> >>>(无符号右移) ~(按位取反)
- 三元运算符: ? :
-
5.数据类型转换
- 数据类型转换有两种方式,即隐式转换和显示转换。
- 隐式类型转换:低级类型->高级类型,系统自动执行。byte<short<int<long<float<double
- 显示类型转换:高精度变量->低精度变量,需使用显示类型转换(强制类型转换)
- 数据类型转换有两种方式,即隐式转换和显示转换。
-
6.代码注释和规范
- 单行注释://
- 多行注释:/* */
- 文档注释:/** */ 文档注释出现在声明之前时,会被Javadoc文档工具读取作为Javadoc文档内容
##第三章 流程控制##
-
1,条件语句
if(表达式){
若干语句
}if(表达式){ 若干语句 }else { 若干语句 } if(表达式){ 若干语句 }else if(表达式){ 若干语句 } ... else{ //这条语句可以没有 若干语句 } switch多分支语句 swith(){ case 常量1; 若干语句; break; case 常量2; 若干语句; break; ... default; 若干语句; break; }//表达式和常量的值必须为整型、字符型、或字符串类型
-
2,循环语句
while(表达式){
执行语句;
}do{ 执行语句; }while(表达式) for(表达式1;表达式2;表达式3){ 语句序列; } //foreach语句是for语句的特殊简化版 for(元素变量x:遍历对象obj){ 引用了x的java语句; } break(跳出循环)和continue(跳出当前循环,进入下一个循环)
##第四章 数组##
-
1,数组定义
数组是具有相同数据类型的一组数据的集合。Java中将数组看做一个对象。 -
2,一维数组
-
声明一维数组的方式:
数组元素类型 数组名称[];
数组元素类型[] 数组名称;以上只是给出了数组的名字和元素的数据类型,要想正真使用数组,需要为它分配内存空间,
数组名字=new 数组元素类型[数组元素个数];//使用new关键字分配数组时,需指定元素类型和数组元素的个数。
声明数组的同时为其分配内存空间:
数组元素类型 数组名=new 数组元素类型[数组元素个数]; -
初始化数组:包括两种形式,例
- int[] arr=new int[]{1,2,3,4,5};
- int[] arr2={11,12,13,14};
-
-
3,二维数组的创建及使用
-
声明二维数组:
- 数组元素类型 数组名字[][];
- 数组元素类型[][] 数组名字;
-
为数组分配内存:
直接为每一维分配内存,例
a=new int[2][4];分别为每一维分配内存,例
a=new int[2][];
a[0]=new int[2];
a[1]=new int[3];
声明的同时为数组分配内存。 -
二维数组的初始化:
type arrayname[][]={value1,value2,…,valuen};
实例:int arr[][]={{12,0},{45,10}};
-
-
4,数组的基本操作
-
遍历数组
-
填充替换数组元素:
可通过Arrays类的静态方法fill()来实现
fill(int[] a,int value);
fill(int[] a,int fromIndex,int toIndex,int value); -
数组排序
主要包括两种排序方法:选择排序和冒泡排序
可以使用Arrays类的静态方法sort()
Java中String类数组的排序算法是根据字典顺序排序的,因此数字排在字母前面,大写字母排在小写字母前面。 -
复制数组
可以使用Arrays类中静态copyOf()方法和copyOfRange()方法
- copyOf(arr,int newlength);//复制数组至指定长度,返回新数组
- copyOfRange(arr,int formIndex,int toIndex);//将指定数组的指定长度复制到一个新数组中,返回新数组 -
数组查询
常用二分搜索法(使用前要先对数组排序)来搜索指定数组,对应方法为binarySearch(); binarySearch(Object[] a,Object key);//若包含,则返回搜索值得索引;否则返回-1或“-”(插入点) binarySearch(Object[] a,int formIndex,int toIndex,Object key);//同上
反转排序
求最大值 -
扫码关注公众号
- 后台回复“Java学习资料”免费获取更多Java学习教材及实战资料