0:00:00.000,0:00:04.526 Questa sarà una sezione molto breve. Vorrei solo aggiungere 0:00:04.526,0:00:09.984 un altro test che funziona bene con i dati sui nomi dei bambini. Quindi, 0:00:09.984,0:00:15.376 questa è l'alternativa al == che abbiamo usato prima 0:00:15.376,0:00:20.768 sui dati dei nomi di bambini. Vorrei mostrarvi queste funzioni, che sono chiamate 0:00:20.768,0:00:25.960 startsWith e endsWith. E queste lavorano nelle stringhe. Per spiegarlo, prendiamo 0:00:25.960,0:00:30.720 il mio codice. Ecco come funziona. Il risultato è lo stesso che abbiamo ottenuto prima. 0:00:30.720,0:00:34.417 Apro la tavola, qui c'è il loop, c'è l'if-statement, guardiamo 0:00:34.417,0:00:38.771 ogni row [NdT riga]. Guardiamo la funzione qui. Allora, la prima 0:00:38.771,0:00:42.974 parte è la stessa che abbiamo fatto prima. Quindi, mettiamo row.getField("name") 0:00:42.974,0:00:47.127 metto il nome della row, ed ecco una stringa. Prima abbiamo fatto 0:00:47.127,0:00:50.874 esempi come, oh, è uguale a "Abby" o "Robert" o qualunque altra cosa, con i segni ==. 0:00:50.874,0:00:55.279 Il modo in cui funzionano le funzioni startsWith e endsWith , la sintassi è 0:00:55.279,0:00:59.348 un po' strana. C'è un punto... E si aggiunge subito a destra 0:00:59.348,0:01:03.787 del nome quindi, tolgo il nome e metto .startsWith. E 0:01:03.787,0:01:08.613 poi, nelle parentesi di startsWith, si può mettere qualunque cosa. 0:01:08.613,0:01:13.622 Provo a mettere "Ab". E cosa ottengo? I nomi che iniziano con le lettere "Ab"? 0:01:13.622,0:01:18.754 Se ottengo qualcosa, allora la funzione startsWith è vera, altrimenti è falsa. Allora, 0:01:18.754,0:01:23.458 leggiamo. Il nome inizia con "Ab"? Proviamo. 0:01:23.458,0:01:28.589 Se eseguo così, vedrete che ha cercato in tutte le 2.000 rows, 0:01:28.589,0:01:33.598 e ha scelto, vedremo tutti quelli che iniziano con "Ab". Quindi, è 0:01:33.598,0:01:41.094 vero per tutti questi. Qualunque cosa io scriva qui, otterremo tutte le rows nelle quali il nome 0:01:41.094,0:01:47.482 inzia con quello. Quindi, potrei scrivere...non so, possiamo invertirlo. Scrivo 0:01:47.482,0:01:53.630 "Ba", oh, non ce ne sono molti. Posso magari solo "A" maiuscolo e non due 0:01:53.630,0:02:00.264 lettere. Ne otterremo molti, molti nomi che iniziano con "A". Se 0:02:00.264,0:02:07.655 scrivo "a" minuscola ed eseguo. Non ottengo nulla. Questo perchè 0:02:07.655,0:02:12.312 ci sono le "A" maiuscole e le "a" minuscole e per il computer 0:02:12.312,0:02:17.459 sono due lettere differenti. In questi dati i nomi iniziano tutti con una maiuscola 0:02:17.459,0:02:22.422 e poi tutte le altre sono minuscole. Quindi startsWith("a") 0:02:22.422,0:02:27.201 avrà zero risultati, mentre se metto una 0:02:27.201,0:02:32.042 "A" maiuscola ed eseguo allora li otterrò tutti. Potete anche vedere che 0:02:32.042,0:02:37.128 tutti iniziano con una maiuscola e sono seguiti da minuscole. Vi serve solo 0:02:37.128,0:02:45.359 sapere questo per i test. Cos'altro posso fare? Proviamo "Z". Allora se 0:02:45.359,0:02:53.616 cerco startsWith("Z"), ottengo tutti i nomi; non sono molti. Oppure 0:02:53.616,0:03:02.081 potrei limitare un po', magari potrebbe iniziare con "Za". Otteniamo meno nomi. Magari posso mettere "Zai". 0:03:02.081,0:03:07.551 E ne otteniamo solo 4. Poi potrei mettere qualcosa come 0:03:07.551,0:03:12.140 "Zai"...non so..."x". Eseguo e, oh, non ottengo nulla. Quindi è 0:03:12.140,0:03:16.843 possibile scrivere un test anche se è falso. Cercherà in tutte le 2000 rows e poi 0:03:16.843,0:03:21.374 non scriverà nulla. Quindi, torniamo a "Zai". Questa è 0:03:21.374,0:03:26.193 la funzione startsWith. E in questi primi esempi lo useremo 0:03:26.193,0:03:30.724 sempre più o meno in questo modo. Allora, abbiamo la row dei dati dei bambini, prendiamo i nomi, 0:03:30.724,0:03:35.255 e mettiamo .startsWith, per controllare la parte sinistra del nome. 0:03:35.255,0:03:41.277 Quindi, come potete immaginare, c'è anche .endsWith che controlla 0:03:41.277,0:03:46.539 la parte destra del nome. Se dico endsWith("z"), eseguo, oh cavoli, 0:03:46.539,0:03:52.425 ce ne sono proprio pochi, sembra che ci siano solo tre nomi 0:03:52.425,0:03:57.895 tra tutti i dati che finiscono con "z". Allora, potrei provare con 0:03:57.895,0:04:04.267 più lettere. Potrei mettere endsWith("ly"). Ce ne sono un po' di più. Provo con endsWith("la"). 0:04:04.267,0:04:09.180 Eseguo. Oh, ce ne sono molti di più. Credo che questi 0:04:09.180,0:04:13.663 siano tutti nomi di bambine. Questo è uno schema culturale 0:04:13.663,0:04:18.514 in Inglese "la" potrebbe essere un nome da bambina. 0:04:18.514,0:04:23.243 Quindi queste sono due funzioni aggiuntive che 0:04:23.243,0:04:28.094 useremo per i nomi dei dati sui bambini. 0:04:28.094,0:04:32.700 Ma ci permetteranno anche di risolvere problemi più interessanti.