Next: , Previous: , Up: Sequences, Arrays, and Vectors [Contents][Index]


6.3 Functions that Operate on Arrays

In this section, we describe the functions that accept all types of arrays.

Function: arrayp object

This function returns t if object is an array (i.e., a vector, a string, a bool-vector or a char-table).

(arrayp [a])
 ⇒ t
(arrayp "asdf")
 ⇒ t
(arrayp (syntax-table)) ;; A char-table.
 ⇒ t
Function: aref arr index

This function returns the indexth element of the array or record arr. The first element is at index zero.

(setq primes [2 3 5 7 11 13])
 ⇒ [2 3 5 7 11 13]
(aref primes 4)
 ⇒ 11
(aref "abcdefg" 1)
 ⇒ 98 ; b’ is ASCII code 98.

See also the function elt, in Sequences.

Function: aset array index object

This function sets the indexth element of array to be object. It returns object.

(setq w (vector 'foo 'bar 'baz))
 ⇒ [foo bar baz]
(aset w 0 'fu)
 ⇒ fu
w
 ⇒ [fu bar baz]
;; copy-sequence copies the string to be modified later.
(setq x (copy-sequence "asdfasfd"))
 ⇒ "asdfasfd"
(aset x 3 ?Z)
 ⇒ 90
x
 ⇒ "asdZasfd"

The array should be mutable. See Mutability.

If array is a string and object is not a character, a wrong-type-argument error results. The function converts a unibyte string to multibyte if necessary to insert a character.

Function: fillarray array object

This function fills the array array with object, so that each element of array is object. It returns array.

(setq a (copy-sequence [a b c d e f g]))
 ⇒ [a b c d e f g]
(fillarray a 0)
 ⇒ [0 0 0 0 0 0 0]
a
 ⇒ [0 0 0 0 0 0 0]
(setq s (copy-sequence "When in the course"))
 ⇒ "When in the course"
(fillarray s ?-)
 ⇒ "------------------"

If array is a string and object is not a character, a wrong-type-argument error results.

The general sequence functions copy-sequence and length are often useful for objects known to be arrays. See Sequences.


Next: Vectors, Previous: Arrays, Up: Sequences, Arrays, and Vectors [Contents][Index]

AltStyle によって変換されたページ (->オリジナル) /