Tipuri de date obiectuale Flashcards
metoda care transforma un string intr-un sir de caractere ?
toCharArray();
metoda care taie spatiile goale de la inceputul si sfarsitul unui string ?
trim();
metoda care returneaza indexul unui anumit caracter dintr-un string sau string-ul dintr-o concatenare de stringuri
indexOf();
indexOf(str, int fromIndex);
metoda care returneaza un caracter dintr-un String in functie de index-ul dat ca parametru ?
charAt();
metoda care selecteaza o anumita parte dintr-un string ?
substring(int start, int end);
Cu ce metoda putem imparti un string intr-un sir de substring-uri ?
split();
metoda care inlocuieste o anumita secventa de caractere cu alta dintr-un string ?
str.replace(“a”, “b”);
Cand este recomandat sa folosim enumerarile ?
Atunci cand avem nevoie sa folosim un set de constante care stim ca nu se vor schimba.
Creati o enumerare care sa contina zilele staptamanii.
sI accesati valoarea SUNDAY
public enum DaysOfWeek{
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
Si o constanta se poate accesa astfel:
DaysOfWeek.SUNDAY;
Fiecare constanta din enumerare poate avea atribuit un numar, da-ti un exemplu.
public enum DaysOfWeek{
SUNDAY(1), MONDAY(2), TUESDAY(3), WEDNESDAY(4), THURSDAY(5), FRIDAY(6), SATURDAY(7);
public int position;
DaysOfWeek(int i){
this.position = i;
}
}
Cum se poate afisa lungimea enumerarii DaysOfWeek ?
System.out.println(DaysOfWeek.values().length);
Cum putem afisa toate elementele enumerarii ?
for (DaysOfWeek dow : DaysOfWeek.values()) {
System.out.println(dow);
}
Cum se poate folosi enumerarea intr-un bloc switch ?
DaysOfWeek dow = DaysOfWeek.WEDNESDAY;
switch (dow) {
case DaysOfWeek.SUNDAY: System.out.println("Today is SUNDAY"); break; case DaysOfWeek.WEDNESDAY: System.out.println("Today is WEDNESDAY"); break; }
Care sunt diferentele dintre sir si lista ?
Sirul are dimensiune statica, lista dimensiune dinamica
Sirul se executa mai repede decat lista
Sirul poate accepta doar date de acelasi tip iar lista poate accepta orice tip
Care sunt cele mai utilizate colectii ?
List
Set
HashMap
Queue
Ce stiti despre colectia Set ?
colectia Set accepta doar valori diferite si nu este o colectie ordonata.
Pentru a avea o colectie ordonata se foloseste SortedSet
Ce stiti despre HashMap ?
HashMap-ul este o colectie in care valoarea este preluata cu ajutorul unei chei unice.
Ce se intampla daca in HashMap introducem doua chei la fel ?
Valorile se vor suprapune, deci va ramane disponibila doar ultima valoare introdusa cu acea cheie.
Ce stiti despre Queue ?
Queue este o structura First In First Out si se aseamana cu o coada din lumea reala unde primul element introdus este si primul element eliminat din coada.
Care sunt metodele clasei List pentru:
- adaugare a unui element in lista
- eliminarea unui element din lista
- verificarea dimensiunii listei
- preluarea unui element din lista
list. add();
list. remove();
list. size();
list. get(index);
Ce se intampla daca intr- un sir exista urmatoarele elemente si eliminati elementul cu nr 2, faceti comparatia cu lista
1, 2, 3
intr-un sir spatiul numarului 2 va ramane gol astfel:
1, , 3
iar la lista index-ul se va reseta astfel:
1, 3
Cum se va face iteratia prin lista myList?
for( String element: myList) {
System.out.println(element);
}
Cum se poate verifica daca lista contine o anumita valoare ?
cu metoda contains(“value”);
Cum se poate converti o lista intr-un sir ?
List myList = new ArrayList<>();
myList.add(“Radu”);
myList.add(“Adrian”);
String[] arr = new String[myList.size()]; for (int i = 0; i < myList.size(); i++) { arr[i] = myList.get(i); }
Cum se poate goli tot continutul unei liste ?
myList.clear();
Cum se poate adauga un element intr-un HashMap ?
Cum se poate prelua o valoare din HashMap ?
hashMap.put(key,value);
hashMap.get(key);
Cum putem citi:
data curenta ?
data si timpul curent ?
timpul curent ?
LocalDate.now();
LocalDateTime.now();
LocalTime.now();
Cum putem extrage:
anul
luna
ziua
LocalDate ld = LocalDate.now();
ld. getYear();
ld. getMonth(); / ld.getMothValue();
ld. getDayOfMonth();
Cum putem extrage:
ora
minutul
secunda
LocalTime lt = LocalTime.now();
lt. getHour();
lt. getMinute();
lt. getSecond();
Cum se poate adauga / scoate manual timp ?
De ex ore sau luni ?
LocalDateTime ldt = LocalDateTime.now();
ldt. plusHour(); ltd.minusHour();
ldt. plusMonths(); ldt.minusMonths();
Cum putem prezenta un moment temporal preferential folosind clasele adecvate ?
De ex
an luna ziua
ora minut
Cum putem uni aceste informatii pentru a crea un intreg ?
LocalDate ld = LocalDate.of(1999, 12, 13);
LocalTime lt = LocalTime.of(19,30);
LocalDateTime ldt = LocalDateTime.of(ld, lt );
Clasele LocalDate si LocalTime si LocalDateTime sunt prezinta timpul intr-un format inteligibil pentru om insa masinile folosesc un alt format, care este acesta ?
Instant instant = Instant.now();
Cum se poate calcula perioada dintre doua momente temporale ?
Instant instant = Instant.now();
Thread.sleep(3000);
long period = instant.until(Instant.now(), ChronoUnit.SECONDS);
System.out.println(period);
Se da String-ul urmator:
String in = “05 05 1988”;
La iesire trebuie afisat 1988-05-05, cum procedam ?
La iesire trebuie afisat 05 May 1988, cum procedam?
String in = “05 05 1998”;
try {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(“dd MM yyyy”);
LocalDate date = LocalDate.parse(in, formatter);
System.out.println(date); } catch (Exception e) { }
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern(“dd MMM yyyy”);
System.out.println(date.format(formatter2));
Ziua de nastere este 02 10 2010
Calculati perioada dintre timpul curent si ziua de nastere oferind urmatoarele detalii:
cati ani au trecut
cate luni au trecut
cate zile au trecut
LocalDate now = LocalDate.now();
LocalDate birthDate = LocalDate.of(2010, Month.OCTOBER, 10);
Period p = Period.between(birthDate, now); long years = ChronoUnit.YEARS.between(birthDate, now); long months = ChronoUnit.MONTHS.between(birthDate, now); long days = ChronoUnit.DAYS.between(birthDate, now); System.out.println(years + " " + months + " " + days);
Calculati durata de secunde scurse intre doua momente temporale
LocalTime t1 = LocalTime.now();
Thread.sleep(3000);
LocalTime t2 = LocalTime.now();
Duration d = Duration.between(t1, t2); System.out.println(d.getSeconds());