小丝出演的《蓝色珊瑚礁》后，莱翁内认为波姬“具有饰演一个成熟角色的潜力”，并提议由她来饰演黛博拉。但是因为当时的作家罢工运动，选角工作被迫拖延，波姬在试演之前退出了选角。莱翁内最终决定由伊丽莎白·麦戈文饰演黛博拉，珍妮佛·康纳莉饰演年轻时的黛博拉。乔·佩西也试演了麦克斯，最后部分因为罗伯特·德尼罗的推荐，他获得了一个小角色弗兰奇的戏份。丹尼·爱罗试演了几个角色，最后莱翁内决定让他扮演影片中的警长。出演《西部往事》的克劳蒂雅·卡汀娜想饰演影片中的卡萝，但是莱翁内因为担心她演的并不像纽约人而拒绝了她。