Le langage de programmation Java offre de nombreuses fonctions intégrées qui permettent aux programmeurs d' accomplir des tâches de base dans la programmation quotidienne. Cependant, ces fonctions ne sont pas toujours facilement accessibles aux programmeurs de mise en œuvre . Utilisation des fonctions intégrées pour résoudre les problèmes peut aider la production , mais n'a pas aider les programmeurs débutants apprennent à résoudre des tâches de base ou à comprendre comment fonctionne le travail sous-jacent. Par exemple , alors que Java contient une fonction de séparation chaîne intégrée , apprendre à construire à partir de zéro peut montrer comment parcourir et manipuler des chaînes , concaténer des chaînes et renvoient des tableaux de méthodes. Fonction de base Structure
La méthode de fractionnement aura comme argument une chaîne de diviser . La fonction va prendre cet argument de chaîne et de créer une série de sous chaînes plus petites basées sur le placement des virgules dans la chaîne d'origine. Comme il y aura peut- être plus d'une sous-chaîne , la fonction stocke ces chaînes dans un tableau de chaînes , où il repasse au programme appelant comme une valeur de retour :
classe
SplitExample {
public static string [] splitter (String arg) { }}
Traverser la chaîne
la méthode sera , comme son fonctionnement primaire, traverse la chaîne à la recherche d' une virgule. Ceci peut être réalisé avec une simple boucle "for" qui se répète sur chaque caractère de la chaîne . Utilisation de la classe string de la fonction intégrée " charAt " , le programmeur peut évaluer chaque personnage car il est rencontré. Chaque itération peut créer un nouveau sous-chaîne jusqu'à ce qu'il rencontre une virgule:
public static string [] splitter (String arg) {
String [ ] list = new String [10] ; //sous chaîne arraycount = 0; cordes sub = ""; //sous-chaîne
courant for (int i = 0; i < arg.length (); i + +) { sub + = arg.charAt ( i );}}
divise la chaîne
la boucle doit se séparer sous cordes basé sur le placement des virgules. Par conséquent, un "if" dans la boucle va vérifier le caractère actuel contre la virgule . S'il ya un match , cela signifie que le contenu actuel du "sub" détiennent une sous-chaîne complète , qui peut ensuite être stocké dans le réseau :
for (int i = 0; i < arg . length () ; i + +) {
if ( arg.charAt ( i) == ',') {list [count ] = sub ; sub = ""; count + +; } else { sub + = arg.charAt (i );}}
retournant une chaîne de tableau
Enfin, toute la méthode doit faire est de copier la dernière sous-chaîne à partir de l'argument de chaîne plus grande , qui ne seront pas se terminer par une virgule , car il se trouve à la fin de la chaîne d'argument . Ensuite, le tableau contiendra toutes les chaînes sous séparées par des virgules , sans inclure les virgules . La méthode retourne le tableau au programme appelant :
for (int i = 0; i < arg.length (); i + +) {
if ( arg.charAt (i) = = ',' ) {list [count ] = sub ; sub = ""; count + +; } else { sub + = arg.charAt (i );}} liste
[count ] = sub ; liste de retour
;