zoukankan      html  css  js  c++  java
  • Java连载94-增强for循环、IO流与文件

    一、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.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

     

  • 相关阅读:
    paip.注册java程序为LINUX系统服务的总结。
    paip.Log4j配置不起作用的解决
    paip.获取地理位置根据Ip
    paip.抓取网页内容--java php python
    paip.java 开发中web server的选择jboss resin tomcat比较..
    paip.c++ 转换 java 解决方案
    paip.java c# .net php python调用c++ c dll so windows api 总结
    SVN的405错误
    怎样开启SQL数据库服务
    C#中读取二维数组每位的长度
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/12446044.html
Copyright © 2011-2022 走看看