Maison > Questions et réponses > le corps du texte
Quelles sont les méthodes ? Quelle méthode est la plus rapide !
Number()
parseInt()
伊谢尔伦2017-07-05 10:43:53
Résultats des tests (non officiels), voyez par vous-même
仅有的幸福2017-07-05 10:43:53
Math.floor(+'123.123');
-Math.floor(-'123.123')
-(-'123.213'.split('.')[0]);
+'123.213'.split('.')[0]
Il existe de nombreuses méthodes de conversion, mais ce sont toutes des astuces consistant à utiliser des opérateurs pour la conversion implicite.
En plus de la préséance et de l'associativité, notez également que différents opérandes affecteront la conversion implicite des opérateurs.
巴扎黑2017-07-05 10:43:53
Il existe également ces méthodes,
'3.1425' | 0
'7.86'^0
'123'-0
J'ai l'impression que les méthodes spécifiquement utilisées pour la conversion sont plus rapides, comme parseInt et Number que vous avez mentionnées. Je ne l'ai pas essayé personnellement
三叔2017-07-05 10:43:53
String inString = ""; // La variable inString est utilisée pour stocker la valeur de l'entrée
Void setup () {
// Ouvrir le port série avec un débit en bauds de 9600
Serial.begin (9600);
Pendant que (! Serial) {
; // attendez que le port série soit activé (uniquement avec le circuit Arduino Leonardo)
}
// Envoyer un message indiquant que la fonction de configuration est terminée
Serial.println (" n nChangements par rapport à :");
Serial.println ();
}
Void loop () {
// Lire la valeur de Serial
While (Serial.available ()> 0) {
Int inChar = Serial.read ();
If (isDigit (inChar)) {// Vérifiez que la fonction NUMBER est un caractère numérique
// et ajoutez des chaînes. Sinon vous y ajouterez un entier : P
InString + = (char) inChar;
}
// Si inChar est un caractère de nouvelle ligne. J'imprime les résultats
If (inChar == 'n') {// Un caractère utilise '(guillemet simple) et une chaîne à utiliser' (guillemets doubles)
Serial.print ("value:");
Serial.println (inString.toInt ());
Serial.print ("string:");
Serial.println (inString);
// supprimer la valeur de la variable inString
InString = "";
}
}
}
éditeur de photos