一、JDK5.0新特性 1.增強for迴圈 2.語法 for(類型 變數:數組名/集合名){} 集合想要使用增強for迴圈這種語法,集合需要使用泛型。 如果不使用泛型,那麼需要哦使用Object類型來定義集合中的元素 package com.bjpowernode.java_learning; im ...
一、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.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料