Problemas com Strings

Eu tenho uma String, e quero comparar ela com um caractere alfabetico ou um número. Por exemplo:

public class testeString{ 
public static void main(String args[]){ 
System.out.println(comptexto(args,0)); //Compara o indice 0 do array args com um texto. Se for, retorna o texto. 
System.out.println(compdigito(args,1)); //Compara o indice 1 do array args com um número. Se for, retorna o número. 
} 
} 

Quero saber como fazer a classe comptexto e compdigito. Em C, eu sei:

char comptexto();
char texto;
int main(){
texto = getchar();
printf("Foi escrito %c",comptexto);
return 0;
}
char comptexto(){
if(texto !isalpha){
printf("ERRO: TEXTO ERA ESPERADO");
exit(1);
}
char palavra;
palavra = texto;
return palavra;
}

Em C,o compdigito seria diferente no:

 if(texto !isdigit) 

Em Java, eu preciso que seja no array de string args. E, se não for o pedido, quero saber como faço para apareçer “Erro: texto era esperado” ou “Erro: inteiro era esperado”.

O cara para compara se é uma letra ou um digito tu pode fazer assim:

[code] private String limpa(String linha){

	String linha2 = "";
	char digit;
	
	for(int i = 0; i < linha.length(); i++){
		if(Character.isLetterOrDigit(linha.charAt(i))){// para saber se é uma letra ou numero
			digit = linha.charAt(i);
			linha2 += digit;
		}
	}
	
	return linha2;
}[/code]

Assim tu verificaria a tua linha e te devolveria uma string contendo só as letras e numeros

Concordo com o Allan.
Post apagado( :smiley: )

Eu entendi que você quer verificar se uma string contém apenas letras ou números.

Se for isso:

System.out.println("asd".matches("[a-zA-Z]+")); // true
System.out.println("asd1".matches("[a-zA-Z]+")); // false
System.out.println("asd_qwe".matches("[a-zA-Z]+")); // false
System.out.println("asd_qwe".matches("[^0-9]+")); // true
System.out.println("asd_qwe".matches("[^\d]+")); // true, mesmo que acima [0-9] = \d
System.out.println("123".matches("\d+")); // true
System.out.println("asd".matches("\d+")); // false