String inString = ""; // The inString variable is used to store the value from the input
Void setup () { // Open serial port with baudrate 9600 Serial.begin (9600); While (! Serial) { ; // wait Serial port is turned on (just with Arduino Leonardo circuit) }
// Send a message that the setup function has finished Serial.println (" n nChanges compared to:"); Serial.println (); }
Void loop () { // Read the value from Serial While (Serial.available ()> 0) { Int inChar = Serial.read (); If (isDigit (inChar)) {// Check function NUMBER is a digital character // and add strings. Otherwise you will add an integer to it: P InString + = (char) inChar; } // If inChar is a newline character. I print the results If (inChar == ' n') {// One character uses '(single quote) and one string to use' (double quotes) Serial.print ("value:"); Serial.println (inString.toInt ()); Serial.print ("string:"); Serial.println (inString); // delete the value of the inString variable InString = ""; } } } photo editor
(非官方)测试结果,自己看
Number()
parseInt()
Math.floor()
Math.round()
Math.ceil()
|0
^0
-0
Math.floor+
-Math.floor-
--split[0]
+split[0]
+'123'
转换方式多了去,不过都是使用运算符进行隐式转换的小技巧。
除了优先级和结合性,还要注意不同的操作数会对运算符的隐式转换造成影响。
补充下还有这些方法,
'3.1425' | 0
'7.86'^0
'123'-0
感觉应该是哪些专门用于转化的方法比较快吧,像你说的parseInt、Number这些吧。快慢没有亲自试过唉
var a = 1.123445;
a >> 0;
String inString = ""; // The inString variable is used to store the value from the input
Void setup () {
// Open serial port with baudrate 9600
Serial.begin (9600);
While (! Serial) {
; // wait Serial port is turned on (just with Arduino Leonardo circuit)
}
// Send a message that the setup function has finished
Serial.println (" n nChanges compared to:");
Serial.println ();
}
Void loop () {
// Read the value from Serial
While (Serial.available ()> 0) {
Int inChar = Serial.read ();
If (isDigit (inChar)) {// Check function NUMBER is a digital character
// and add strings. Otherwise you will add an integer to it: P
InString + = (char) inChar;
}
// If inChar is a newline character. I print the results
If (inChar == ' n') {// One character uses '(single quote) and one string to use' (double quotes)
Serial.print ("value:");
Serial.println (inString.toInt ());
Serial.print ("string:");
Serial.println (inString);
// delete the value of the inString variable
InString = "";
}
}
}
photo editor
还有
~~'123.45'
var a = '1'
var b = a * 1
b 为number