Rechercher : dans
Par :

Petite question sur le String en java

Dernière réponse le 1 sep 2008 à 15:57:17 artragis, le 1 sep 2008 à 09:38:07 
 Signaler ce message aux modérateurs

Bonjour, Je débute (pour ceux qui ont déjà vu mes question, je sais je me répète) et, dans un programme, je désire comparer 2 caractères.
Je regarde la documentation Java en anglais, et deux methodes me donnent un tel résultat : CompareTo() et CompareToIgnoreCase()
mon but à moi est de comparer deux caractère mais sans tenir compte des majuscules ex "e"="E" de même que é=E enfon vous voyez?
est-ce que ces methodes font cela, en effet la comparaison est lexicographique (lexicographically en anglais) et j'ai des doutes sur ce mot. merci

Configuration: Windows Vista
Firefox 3.0.1

Meilleures réponses pour « petite question sur le String en java » dans :
Javascript - L'objet String VoirLes particularités de l'objet String string est un mot anglais qui signifie "chaîne", il s'agit en fait de chaîne de caractères. L'objet String est un objet qui contient un certain nombre de propriétés et de méthodes permettant la manipulation...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...
Java - Les packages VoirIntroduction aux packages La programmation Java consiste à créer des classes. Or, étant donné qu'un programme est généralement développé par une équipe de programmeurs, c'est-à-dire plusieurs personnes, le fait de concaténer (mettre bout à bout)...

1

sophieeeeee, le 1 sep 2008 à 09:39:59

CompareToIgnore Case me parait le plus approprié parce que ignore case ca veut dire que ca ignore si c'est en majuscule ou minuscule.

Répondre à sophieeeeee

2

artragis, le 1 sep 2008 à 15:14:48

J'ai de gros problème, je tourne en rond depuis ce matin. mon but est de créer un code qui transforme un caractère en chiffre.
j'ai galéré à comprendre qu'il n'y avait pas que des lettre sur le clavier, et que donc, une simple comparaison lexicographique était à oublier puisque à chaque fois je passe au dessus de ma boucle, ou alors l'ordi ne trouve rien, ce qui est logique.
Sur la documentation java j'ai donc recherché comment faire, et j'ai trouvé les methode "isLetter()", "isSpace()", "isDigit()", seulement, à peine ai-je intégré ma methode "isLetter" qu'eclipse me dit

The method isLetter(char) is undefined for the type MoteurCrypto

je redonne mon code


//alphabet
			String alphabet[]={"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
			
			int i;
			int j;
			//comparaison et toutes les variables pour la lecture des caractère de la textBox
		
			char caraclu[]=new char[1];
			//boucle for pour la lecture des caractères
			for(i=0;i<texteEntré.length();i++){
				caraclu[0]=texteEntré.charAt(i);
					//là je vérifie la nature des caractères, pour mettre en place mon algorithme de remplacement
                                if(isLetter(caraclu[0])){
				}
				else if(isSpace(caraclu[0])){
				}
				else if(isDigit(caraclu[0])){
				}
				
				
					
				
				
				textecodé=textecodé+" "+j;
				
			}

Répondre à artragis

3

Marco la baraque, le 1 sep 2008 à 15:24:16

Salut,
C'est parce que la méthode isLetter (c'est aussi valable pour les autres) n'est pas une méthode de ta classe (qui s'appelle MoteurCrypto je présumme), mais des méthodes de la classe Character.

Ce sont des méthodes statiques, donc tu peux les appeler ainsi :

if(Character.isLetter(caraclu[0])){
}
else if(Character.isSpace(caraclu[0])){
}
else if(Character.isDigit(caraclu[0])){
}


Cordialement, blogfrisbee point blogspot point com

Répondre à Marco la baraque

4

artragis, le 1 sep 2008 à 15:39:43

Merci, ça marche pour tout sauf pour isSpace() qui est barré par eclipse avec comme erreur :

The method isSpace(char) from the type Character is deprecated

Répondre à artragis

5

Marco la baraque, le 1 sep 2008 à 15:45:44

Ce n'est pas une erreur, c'est un warning. La méthode est dépréciée, ça signifie qu'elle marchait bien dans les anciennes versions, mais qu'aujourd'hui il faut éviter de l'utiliser (en général d'autres méthodes ont été développées et correspondent mieux au besoin, ou sont optimisée...).

Dans le cas de isSpace, la méthode a été remplacée par isWhitespace (toujours de la classe Character), d'après la doc.
blogfrisbee point blogspot point com

Répondre à Marco la baraque

6

artragis, le 1 sep 2008 à 15:56:11

Oui j'ai vu dans la doc, en fait avant il y avait 1 metode là où il y en a deux maintenant (isWhitespace() et isSpaceChar()) je suis désolé. merci pour tout

Répondre à artragis

7

 Marco la baraque, le 1 sep 2008 à 15:57:17

Il n'y a pas de mal :) blogfrisbee point blogspot point com

Répondre à Marco la baraque
Collection CommentÇaMarche.net