一、JDK5.0新特性
1.增强for循环
2.语法
for(类型 变量:数组名/集合名){}
集合想要使用增强for循环这种语法,集合需要使用泛型。
如果不使用泛型,那么需要哦使用Object类型来定义集合中的元素
package com.bjpowernode.java_learning;
import java.util.*;
public class D94_1_EnhanceForCirculation {
public static void main(String[] args) {
int[] a = {1,2,3,4,5,6};
//遍历
for(int i=0;i<a.length;i++) {
System.out.println(a[i]);
}
System.out.println("=================");
//使用foreach
for(int e:a) {//int e代表的是集合或者数组中的每一个元素
System.out.println(e);
}
System.out.println("=================");
//集合
Set<String> strs = new HashSet<String>();
strs.add("hdosafj");
strs.add("hdosafdfgdfgj");
strs.add("hdoyikiljsafj");
strs.add("hdojhgjsafj");
//使用foreach遍历
for(String s:strs) {
System.out.println(s);
}
System.out.println("=================");
//练习一个反例:集合不使用泛型
List l = new ArrayList();
l.add("josdajf");
l.add(45);
l.add(false);
//如果不使用泛型,那么需要哦使用Object类型来定义集合中的元素
for(Object o :l){
System.out.println(o);
}
System.out.println("=================");
String[] ins = {"运动","音乐","旅行","美食"};
StringBuffer sb = new StringBuffer();
for(int i=0;i<ins.length;i++) {
if(i==ins.length-1) {
sb.append(ins[i]);
}else {
sb.append(ins[i]);
sb.append(",");
}
}
//以上的循环就不适用增强for,因为最后一个元素无法特殊处理
}
}
3.关于增强for循环的缺点:
(1)没有下标;
二、IO流与文件
1.流根据方向可以分为:输入流和输出流。
2.注意:输入流和输出流是相对于内存而言的。从内存里出来就是输出流,到内存中去就是输入。输入流又叫做InputStream,输出流又叫做OutputStream,输入还叫做“读read",输出又称为”写write"。
3.流根据读取数据可以分为:字节流和字符流,字节流是按照字节的方式进行读取,字符流是按照字符的方式进行读取。一次读取两个字节。java语言中一个字符占用两个字节。
4.字节流适合读取视频、声音、图片等二进制文件。例如:word文件,实际上这不是纯文本文件,它是一种二进制文件。
5.字符流适合读取,纯文本文件。
6.java语言中所有的字节流都是以Stream结尾,所有的字符流都含有Reader或者writer。
7.需要掌握的16个流:
在这个包下:java.io*;
(1)FileInputStream
(2)FileOutputStream
(3)FileReader
(4)FileWriter
带缓存的
(5)BufferedReader
(6)BufferedWriter
(7)BufferedInputStream
(8)BufferedOutputStream
读取数据的
(9)DataInputStream
(10)DataOutputStream
(11)ObjectInputStream
(12)ObjectOuputStream
转换流(字节流转化为字节流)
(13)InputStreamReader
(14)OutputStreamWriter
(15)PrintWriter
(16)PrintStream
三、源码:
D94_1_EnhanceForCirculation.java
https://github.com/ruigege66/Java/blob/master/D94_1_EnhanceForCirculation.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料