A family of finite-difference methods is used to transform the initial/boundary-value problem associated with the nonlinear Schrödinger equation into a first-order, linear, initial-value problem. Numerical methods are developed by replacing the time and space derivatives by central-difference replacements. The resulting finite-difference methods are analysed for local truncation, errors, stability and convergence. The results of a number of numerical experiments are given.