Variável String

Olá pessoal…
Sou super iniciante em programação, consequentemente em java.
Estou iniciando um curso que comprei na web.
sei que a pergunta que vou fazer pode ser até “tola” ao ponto de vista
de grandes programadores, mas lembro que estou iniciando e espero que me entendam.

estou começando a compilar alguns algorítmos em java como soma, calculos de média, etc.

fiz esse código para gravar na variavel o valor digitado do tipo ponto flutuante:

import java.util.*;

public class ValorDeVenda
{
public static void main(String args[])
{
double custo;

    Scanner scan = new Scanner(System.in);
    
    System.out.println("Digite o valor de custo do produto: ");
    custo = scan.nextDouble();

este compilou e rodou blza. gostaria de saber se tenho que alterar alguma coisa para receber valores de caracteres
pois segui o mesmo conceito e ta dando erro. fiz assim.

import java.util.*;

public class VMediaAluno
{
public static void main(String args[])
{
String nome;

    Scanner scan = new Scanner(System.in);
    
    System.out.println("Digite o nome do aluno: ");
    nome = scan.nextString();

creio que o erro esteja nesta ultima linha.
se alguem puder me ajudar, agradeço.

Comece por aqui:


Troque o nextString() por nextLine()

[code]import java.util.*;

public class VMediaAluno {

/**
 * @param args
 */
public static void main(String[] args) {
	// TODO Auto-generated method stub
	String nome;
	
	Scanner entrada = new Scanner(System.in);
	System.out.println("Digite o nome do aluno: ");
	nome = entrada.nextLine();
	
	System.out.println(nome);
}

}[/code]

Obrigado Enadrov.

Fiz hje como vc me ensinou e deu certo.
Um colega meu que ja programa em java me
deu a dica de retirar o tipo da variavel após o next.

Ao invés de: entrada.nextString (o que tava dando erro)
coloquei somente: entrada.next ( e deu certo.)…

Mas já tinha feito da forma que vc me ensinou e estou usando .nextLine.
Obrigado mesmo…
tdo de bom!!!

De boa BobJr[u]
Também estou aprendendo, mas sempre que puder ajudar estou a disposição.