Pegar tag XML e colocar num Array

Estou tentando pegar tag CFOP de NFe e colocar num ArrayLista, consegui pegar, mas está mostrando apenas a tag ao invés dos valores.
Gostaria de exibir os valores.

Usei o seguinte trecho para pegar.

NodeList list = document.getElementsByTagName("CFOP");
		ArrayList<String> nodes = (ArrayList<String>) IntStream.range(0, list.getLength())
				.mapToObj(list::item)
				.map(n -> n.getNodeName())
				.collect(Collectors.toList());

Acho que o problema é essa linha:

.map(n -> n.getNodeName())

Você está pegando apenas o nome do Node, ou seja, a tag.
Para pegar o valor use:

.map(n -> n.getNodeValue())

@AbelBueno, usando getNodeValue(), ele retornou null, ai achei um exemplo parecido usando com o getTextContent(), ai deu certo.

Muito Obrigada!!!

Vou colocar o trecho atualizado.

NodeList cfop = document.getElementsByTagName(“CFOP”);
ArrayList nodes = (ArrayList) IntStream.range(0, cfop.getLength())
.mapToObj(cfop::item)
.map(n -> n.getTextContent())
.collect(Collectors.toCollection(ArrayList::new));

System.out.println(nodes);