第五章 集合与IO:Java开发类库中提供了多种结构的集合类型,本章以ArrayList集合类型为例进一步理解面向对象程序设计中多态机制的应用。输入输出是本章的另一个主要内容,我们介绍了访问文件的基本类型以及基本操作方法。本章最后用一个简单的综合应用,说明如何读取网络文件的内容,并结合集合数据类型完成一些基本的功能。5.1集合类型:ArrayList是java.util包内申明的一种用数组实现的链表数据类型,在ArrayList集合内每个元素都是一个对象,元素是有顺序的并且是可以重复的。我们可以使用add方法往集合内添加一个元素,也可以使用contains方法判断集合内是否已经存在某个元素。需要重点理解的是,contains方法的实现是使用equals方法来判断的。
5.2输入输出:输入输出也是程序常用的基本操作之一,java.io包内提供了字节流和字符流两种格式的文件操作类型,分别用于访问文本文件和二进制文件。除了文件读写之外,不同程序之间的通信也是通过输入输出流的方式进行的。本节介绍如何使用URL类得到输入流,从而实现网络资源的读取。
[单选题]推测java.io包内FileInputStream类构造方法最可能的形式是选项( )。 选项:[public FileInputStream(String file)throws IOException
, public FileInputStream(String file)throws Exception
, public FileInputStream(String file)
, public FileInputStream(String file)throws FileNotFoundException
]
[多选题]下面关于ArrayList集合类说法正确的是( )。 选项:[集合内的元素是有顺序的,可以使用get(i)取得第i个元素
, ArrayList是java.util包内申明的预定义类
, 使用contains方法可以判断集合内是否存在某一个元素
, 使用add方法可以把任何对象添加到集合中
]
[判断题]URL类是java.net包内申明的预定义类,我们可以用它来读取网络中HTML页面文件的内容。( ) 选项:[错, 对]
[多选题]根据如下程序片段选择正确的说法( )。

import java.util.*;

public class Test{

public static void main(String[] args){

         ArrayList list = new ArrayList();

String data = “John,23nMary,18nAlice,20”;

String[] lines = data.split(“n”);

for(int i=0; i<lines.length; i++){

         String[] fields = lines[i].split(“,”);

         Person p = new Person(fields[0], Integer.parseInt(fields[1]));

         list.add(p);

}

System.out.println(list);

}

}


选项:[parseInt是Integer类中的静态方法,运行时有可能产生异常
, split是String类中的方法,作用是按给定的格式分割成子串
, 如果程序输出结果[John 23, Mary 18, Alice 20],那么可以判断Person类一定覆盖了toString方法
, Person类中至少有一个显式申明的构造方法
]
[多选题]关于下面程序说法正确的是( )。

import java.io.*;

import java.net.*;

public class Test{

         public static void main(String[] args)throws Exception{

        URL url = new URL("http://www.nufe.edu.cn");

        BufferedReader reader = new BufferedReader(

                new InputStreamReader(url.openStream(), "UTF8")

        );

        String line = reader.readLine();

        while(line!=null){

            System.out.println(line);

            line = reader.readLine();

        }

    }

}


选项:[InputStreamReader的作用是把字节流转换成字符流
, 程序的功能是读取http://www.nufe.edu.cn主页内容并输出
, BufferedReader的作用是能够一行一行的读取内容
, 程序存在语法错误,需要将main方法形式中的throws Exception修改成throws IOException
]
[多选题]下面关于ArrayList集合类说法正确的是( )。 选项:[ArrayList是java.util包内申明的预定义类
, 集合内的元素是有顺序的,可以使用get(i)取得第i个元素
, 使用contains方法可以判断集合内是否存在某一个元素
, 使用add方法可以把任何对象添加到集合中
]
[单选题]推测java.io包内FileInputStream类构造方法最可能的形式是选项( )。 选项:[public FileInputStream(String file)throws Exception
, public FileInputStream(String file)throws IOException
, public FileInputStream(String file)throws FileNotFoundException
, public FileInputStream(String file)
]
[判断题]URL类是java.net包内申明的预定义类,我们可以用它来读取网络中HTML页面文件的内容。( ) 选项:[对, 错]
[多选题]关于下面程序说法正确的是( )。

import java.io.*;

import java.net.*;

public class Test{

         public static void main(String[] args)throws Exception{

        URL url = new URL("http://www.nufe.edu.cn");

        BufferedReader reader = new BufferedReader(

                new InputStreamReader(url.openStream(), "UTF8")

        );

        String line = reader.readLine();

        while(line!=null){

            System.out.println(line);

            line = reader.readLine();

        }

    }

}


选项:[InputStreamReader的作用是把字节流转换成字符流
, BufferedReader的作用是能够一行一行的读取内容
, 程序的功能是读取http://www.nufe.edu.cn主页内容并输出
, 程序存在语法错误,需要将main方法形式中的throws Exception修改成throws IOException
]
[多选题]根据如下程序片段选择正确的说法( )。

import java.util.*;

public class Test{

public static void main(String[] args){

         ArrayList list = new ArrayList();

String data = “John,23nMary,18nAlice,20”;

String[] lines = data.split(“n”);

for(int i=0; i<lines.length; i++){

         String[] fields = lines[i].split(“,”);

         Person p = new Person(fields[0], Integer.parseInt(fields[1]));

         list.add(p);

}

System.out.println(list);

}

}


选项:[parseInt是Integer类中的静态方法,运行时有可能产生异常
, 如果程序输出结果[John 23, Mary 18, Alice 20],那么可以判断Person类一定覆盖了toString方法
, split是String类中的方法,作用是按给定的格式分割成子串
, Person类中至少有一个显式申明的构造方法
]

温馨提示支付 ¥1.00 元后可查看付费内容,请先翻页预览!
点赞(0) dxwkbang
返回
顶部