第07章_数组与字符串
- 格式:ppt
- 大小:802.00 KB
- 文档页数:73


第9章 数组与字符串
在接下来的几章内容中,笔者将陆续介绍JavaScript中内部对象的使用。数组是用
来存储数据的有序集合,在JavaScript中有专门的Array对象用于实现数组的功能。如
果需要存储大量的数据,而把这些数据逐一存储在变量中,其工作量将非常大而且不便
于管理和使用。可以将这些数据存储在一个数组中,这样就简化了存储过程并且便于使
用。字符串是几乎在任何程序中都会用到的,因此,对字符串的使用和处理显得尤为重
要。JavaScript中与字符串相对应的是String对象,String对象提供了一些非常实用的方
法用于字符串的处理。
9.1 使用数组
9.1.1 数组和数组元素
数组从其字面意义上可以理解为“一组数据”,数组用计算机术语表示是指存储数
据的有序集合。存储在数组中的一个个数据被称为“数组元素”。由于JavaScript是弱
类型语言,所以同一个数组中可以具有不同数据类型的数组元素,这也是JavaScript和
其他语言相区别的地方。
数组元素是通过数组索引来标记的。数组索引是从0开始的,也就是说数组中的第
一个元素的索引为0,第二个数组元素的索引为1,依此类推。这样,如果数组中有n
个元素,则最大元素的索引为n-1。数组元素与数组索引的对应关系如图9-1所示。
图9-1 数组元素与索引
一个数组中最多可以容纳232-1个元素,因此数组索引的范围是0~232-2的整数。
9.1.2 数组的创建
JavaScript中创建数组的方式非常灵活,首先介绍使用Array对象创建数组。
使用Array对象创建数组
根据传入Array对象构造函数的参数不同,可以分为三种不同的格式。第一种格式的基本语法为:
var array = new Array();
使用上面的代码创建了一个不包含任何数组元素的数组。数组元素可以稍后再添加 •2•
到数组中。
第二种创建数组的方法是可以预先定义部分或全部数组元素并设置初始值,其基本语法格式为:
06_JAVA练习题第六章-数组与字符串
[单选题]
1.给出下面程序代码:
byte[] a1, a2[];
byte a3[][];
byte[][] a4;
下列数组操作语句中哪一个是不正确的?( )
A)a2 = a1
B)a2 = a3
C)a2 = a4
D)a3 = a4
答案:A
解析: 【解析】只有维数相同的数组才能相互赋值。
2.关于数组,下列说法中不正确的是( )。
A)数组是最简单的复合数据类型,是一系列数据的集合
B)数组元素可以是基本数据类型、对象或其他数组
C)定义数组时必须分配内存
D)一个数组中所有元素都必须具有相同的数据类型
答案:C
解析: 【解析】数组元素可以是基本数据类型、对象或其他数组
3.设有下列数组定义语句:
int a[] = {1, 2, 3};
则对此语句的叙述错误的是( )。
A)定义了一个名为a 的一维数组
B)a 数组有3 个元素
C)a 数组元素的下标为1~3
D)数组中每个元素的类型都是整数
答案:C
解析: 【解析】数组元素的下标是从0 开始的。
4.执行语句: int[] x = new int[20]; 后,下面哪个说法是正确的?( )
A)x[19] 为空
B)x[19] 未定义
C)x[19] 为0
D)x[0] 为空
答案:C
解析: 【解析】此语句定义了x 数组后, x[0]~x[19] 的值全部为0。 5.下面代码运行后的输出结果为( )。
public class X6_1_5 {
public static void main(String[] args)
{ AB aa = new AB();
AB bb;
bb = aa;
System.out.println(bb.equals(aa));
}
}
class AB{ int x = 100; }
A)true
B)false
《C语言程序设计》课程教案表
授课题目
第四章 数组(3)——字符数组和字符串 课时安排 2
授课时间
教学目的和要求
1.掌握:几种常用的字符串处理函数
2.熟悉:指针与数组。
教学内容
1.基本内容:(1)几种常用的字符串处理函数(2)指针与数组。
2.重点:几种常用的字符串处理函数
3.难点:指针与数组
讲课进程和时间分配
1、复习与新知识导入(5分钟)
2、字符串处理函数(45分钟)
C语言编译系统中,提供了很多有关字符串处理的库函数。下面介绍几个常用的字符串处理函数。使用输入、输出字符和字符串函数时,应在函数前加上头文件“stdio.h”;使用其他字符串操作函数时,则应加上头文件“string.h”。
板书:#include
#include
(1)字符串输出函数
格式:puts(字符串)
功能: 将一个字符串(以‘\0’为结束标志)输出到终端。输出的字符串中可以包含转义字符。例如: char str[]={“China\nBei jing”};puts(str);
输出:China
Bei jing
在输出时将字符串结束标志‘\0’转换成‘\n’,即输出完字符串后换行。
板书:puts(str);与printf(”%s\n”,str)等价或puts(“OK!”);与printf(“%s\n”,”OK!”)或printf(“OK!\n”)等价
(2)字符串输入函数
格式:gets(字符数组)
功能: 从终端输入一个字符串(可包含空格)以回车为输入结束标志,将接受到的字符依次赋值给字符数组各个元素,并自动在字符串末尾加结束标记‘\0’。例如:gets(str);
注意:用puts和gets函数只能输入或输出一个字符串,不能写成:puts(str1,str2); 或:gets(str1,str2);说明:字符串可以是字符数组或字符串常量。
第五章 数组和字符串
一, 填空题
1. Java 语言提供的用于处理可变字符串的字符串类是 ______。(StringBuffer)
2. Java 语言提供的用于处理不可变字符串的字符串类是 ______。(String)
3. 使用运算符==判定两个String 类的对象是否相等, 此时判定的是______。(两个对象在内存中的存储空间是否相同)
4. 数组静态初始化是指______。(在数组声明的同时给数组元素符初值)
5. 数组动态初始化时, 必须使用______分配空间。(new运算符)
6. 数组下标可以是______。(整型常量或表达式)
7. 执行String s1= “023368”; String s2 =s1.replace (“3”,”6”); 后, s2的值是______。(026668)
二, 填空题
1. 在Java中是如何完成数组边界检查的?
在Java 中, 数组下标从0 开始, 数组中的元素个数length 是数组类中唯一的数据成员变量。 使用new 创建数组时系统自动给length 赋值。 数组一旦创建完毕, 其大小就固定下来。 程序运行时可以使用length 进行数组边界检查。 如果发生越界访问, 则抛出一个异常。
2. 请简述数组创建的过程. 如何创建一个对象数组?
数组声明仅仅是定义了一个数组引用, 系统并没有为数组分配任何内存, 因此现在还不能访问它的任何元素。 必须经过数组初始化后, 才能使用数组的元素。 初始化的过程就是数组的创建过程。 对于类类型的数组, 使用运算符new 只是为数组本身分配空间,并没有对数组的元素进行初始化。 所以对类类型的数组, 空间分配需要经过两步: 1. 先创建数组本身: 类型 数组名[] = new 类型[数组大小]; 2. 分别创建各个数组元素: 数组名[0] = new 类型(初始表); …………数组名[数组大小-1] = new 类型(初始表);