Separação de string a partir de espaço

Boa tarde, poderiam me ajudar em separar uma string a partir do espaço

por exemplo:

 String order = entry.nextLine();
 //entry é meu java.util.scanner

o que eu quero que aconteça e que se a pessoa digitar “abc de”, somente vai retornar abc, ou seja, recortar pra frente da primeira palavra, assim que for detectado um espaço, sendo que eu não sei o que vai ser digitado.

next()

como assim?

O método next da classe Scanner lê, apenas, a primeira sequência de caracteres, até encotntrar \n (enter) ou espaço ou tab.

String order = entry.next();

nao, o que eu quero é cortar o que está apos o primeiro o primeiro espaço, não importando o tamanho do recebido ao valor order

Fera “cortar” seria o que? Seja claro, dê exemplos

Vc vai usar oq tiver depois do primeiro espaço?

desculpem, seria como repartir essa string

não, nao vou usar o restante

Olha, você tem sérios problemas com ser claro.

Enfim, se você quer ler só a parte anterior ao espaço, use o next.
Senão, leia com nextLine e use o split(" "); para dividir a String em um array de String.

um exzemplo seria

frase inteira = “abc de”

frase ‘cortada’ = só o " abc"
sem o de e qualquer outra coisa que estivesse apos o primeiro espaço da string

me desculpem novamente, sou apenas um iniciante em programação em java, e só tenho 13 anos

Se for ler uma única vez e apenas uma String, use o método next.
Agora, se vai ler em loop ou se vai ler informações depois, opte pelo nextLine e utilize o split(" ")[0] para pegar a primeira parte.

1 curtida

Muito obrigado, ajudou muito

Se não vai usar o restante, pq n pode usar o next pra ler?

Tenta pegar o retorno e aplicar um filtro

public static void main(String[] args) {
String[] entradas = {“ead asd 123”,“1234”,“sdasda adaasdadasda”};
Pattern p = Pattern.compile("([^\s]*)\s?");

for(String entrada:entradas) {
	String[] arrStr = entrada.split(" ");
	System.out.println(arrStr[0]);
	Matcher m = p.matcher(entrada);
	if(m.find()) {
		System.out.println(m.group(1));
	}
}

}

tem duas formas com split por espaço ou com regexp as duas funcionam

simplesmente por que ã pessoa pode digitar o que que quiser, o computador só vai precisar da primeira palavra

Sim, mas ela vai poder. Já testou com o next?
Com o next recomendo sempre usar um Scanner novo:
String var = new Scanner(System.in).next();

nossa, nem pensei sobre isso, acho que preciso estudar um pouco mais kkkkk