一、目前用的JDK版本为 JDK 8.0
之前JDK的版本号是1.0, 1.1, 1.2,1.3, 1.4, 1.5
之后就变成了 5.0 ,6.0, 7.0, 8.0······
二、JAVA的三个平台版本
JAVASE (Standard Edition) 标准版 --开发普通桌面和商务应用程序
JAVAME (Micro Edition) 小型版--开发移动设备和嵌入式设备(电器、机器人、机顶盒…)
JAVAEE (Enterprise Edition)企业版 --开发企业环境下的应用程序,主要针对于Web应用程序开发。
三、特点
简单性 高效性 编译性 解释性 面向对象 分布式处理 健壮性 安全性 开源 跨平台
跨平台性:Java程序是由JVM负责运行。在不同的操作系统上,只要安装不同版本的JVM,相同的JAVA程序即可完美的移植到不同的平台,不需要再次编译,节省了时间和人力。
四、安装JDK
JDK 有3部分:
1.Java开发工具(jdkin)
2.基础开发库(jdkjrelib t.jar)
3.基础开发库的源码(jdksrc.zip)
安装到半道时会让你选择JRE的安装文件夹,记得提前新建好。
安装完设置:
JAVA_HOME (D:javajdk)
PATH (D:javajdkin)
CLASSPATH 不用配置
五、JDK,JRE,JVM的关系
1.JDK---是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。
2.JRE---运行JAVA的运行时环境,包含JVM和Java核心类库。
3.JVM---虚拟机,运行以Java语言写作的软件程序。
六、验证是否安装成功
dos下 java -version
成功显示版本号 就成功了。
七、Eclipse命名
先手动建个workspace
包名:全小写 建议公司域名倒着写 例:cn.badu.day01
类名:驼峰规则 见名知意 例:HelloWorld
八、数据类型
1.标识符:给类,方法,变量等起名字时用的,可以有( 字母 数字 _ $ )不能以数字开头。
2.关键字 不能被用作标识符,共有53个(其中const和goto先保留着)。
3.基本类型(8种)
- 类型转换 (小 -> 大 直接转) (大 -> 小 强制转换) 小数转成整数时,小数部分直接舍弃
- Java中直接用浮点运算时会不精确,需用API中的BigDecimal工具。
九、运算符
十、自增自减
十一、分支结构
- if ( 条件判断 ){
代码块
}else if{
代码块
}
- switch ( 变量/表达式 ) { //JDK 7.0以后还可以写String
case 1 : //想要从哪句跳出循环,就在哪句后面加个break。否则会依次向下穿透执行后面所有的语句
case 2 :
case 3 :
default :
}
十二、循环结构
- for循环
- foreach循环
- while循环 ---先判断,再执行
while( 执行条件 ) {//当执行条件判断的结果为true时,就开始执行代码
代码······
}
- do-while循环 先执行一次代码,再进行判断
do {
代码
} while (执行条件);
十三、局部变量
定义在方法里,或者局部代码块中。必须手动初始化,来分配内存,等方法运行完内存就释放了。
十四、成员变量
定义在类里,方法外。不用初始化,会自动被初始化成默认值。作用域是整个类,类消失了,变量才释放。
十五、方法的调用
- 无参数 无返回值
- 有参数 无返回值
- 有参数 有返回值
十六、方法的重载 Overload
注意 在参数类型不同的情况下,参数的个数相同,但位置不同,也算重载。IDE不报错。
但 如果参数类型相同 ,参数个数也相同,只有位置不同时,就不算重载。IDE报错。
重不重载可以用IDE试一下就知道了。
十七、数组Array
是用于存储多个 相同类型数据 的集合。下标从0开始。数组一旦创建好了,其长度(length)不可改变。
初始化数组的3种形式:
数组的遍历:
练习1:把[1,10]之间的整数 存入数组arr1中,最后用Arrays工具类中的toString方法将存入的元素用字符串表示出来(会提示导包-util包)
练习2: 在[1,100]以内随机取5个整数,放入长度为5的数组arr1中 (会提示导包 .util.Random)
十八、数组工具类
Arrays.to String( 数组名称 ) 把数组中的元素,用逗号连接成一个字符串
Arrays.sort( 数组名称 ) 给数组中的元素排序
对于基本类型的数组,使用优化后的快速排序算法。
对引用类型数组,使用优化后的合并排序算法。
Arrays.copyOf( 数组名称,新的长度 ) 把数组复制成一个指定长度的新数组
新数组长度 大于 原数组 时 ,相当于把原数组复制,并增加位置,多出来的位置会自动用0补充。----数组的扩容
新数组长度 小于 原数组 时 ,相当于把原数组从头开始截取,截取一部分数据。 ----数组的缩容
---综合测试:
十九、冒泡排序
图解