Her er Java-spørgsmål Interviewspørgsmål til friskere såvel som erfarne kandidater til at få deres drømmejob.
1) Hvad er framework i Java?
En ramme er en populær og færdiglavet arkitektur, der indeholder et sæt klasser og grænseflader.
2) Hvad er Collection-rammen i Java?
Collection Framework er en gruppering af klasser og grænseflader, der bruges til at gemme og administrere objekterne. Det giver forskellige klasser som Vector, ArrayList, HashSet, Stack osv. Java Collection framework kan også bruges til grænseflader som kø, sæt, liste osv.
3) Forklar samlingsklasse
java.util.Collections er en klasse, der består af statiske metoder, der fungerer på samlinger. Den indeholder polymorfe algoritmer til at arbejde på samlinger, "wrappers". Denne klasse indeholder metoder til algoritmer, som binær sortering, søgning, blanding osv.
4) Hvad er hashCode ()?
HashCode () er en metode, der returnerer en heltal hash-kode.
5) Skel mellem ArrayList og Vector i Java-samlingsrammen.
ArrayList | Vektor |
ArrayList kan ikke synkroniseres. | Vector kan være er synkroniseret. |
Det er ikke en arveklasse. | Det er en arveklasse. |
Det kan øge størrelsen med 50% af arrayets størrelse. | Det kan øge størrelsen ved at fordoble størrelsen på arrayet. |
ArrayList er ikke trådsikker. | Vector er trådsikker. |
6) Hvad er ArrayList i Java?
ArrayList er en datastruktur, der kan strækkes for at rumme yderligere elementer i sig selv og krympe tilbage til en mindre størrelse, når elementer fjernes. Det er en meget vigtig datastruktur, der er nyttig til håndtering af elementers dynamiske opførsel.
7) Skel mellem Iterator og ListIterator
Forskellen mellem Iterator og ListIterator er:
Iterator | ListIterator |
Iteratoren kan krydse arrayelementerne i fremadgående retning. | ListIterator kan krydse arrayelementerne både bagud og fremad. |
Det kan bruges i kø, liste og sæt. | Det kan bruges i listen. |
Det kan kun udføre fjernbetjening. | Det kan udføre tilføjelse, fjernelse og indstilling af operation under passage af samlingen. |
8) Hvad er forskellen mellem Iterator og Enumeration?
Forskellen mellem Iterator og Enumeration
Iterator | Optælling |
Iteratoren kan krydse begge arv såvel som ikke-arvede elementer. | Optælling kan kun krydse arvselementer. |
Iteratoren er fail-hurtig. | Optælling går ikke hurtigt. |
Iteratoren er meget langsom sammenlignet med optælling. | Optælling er hurtig sammenlignet med Iterator. |
Iteratoren kan udføre fjernbetjening, mens den krydser samlingen. | Tællingen kan kun udføre traversoperation på samlingen. |
9) Definer BlockingQueue
BlockingQueue er en grænseflade, der bruges i Java, der kan udvide køen. Det giver samtidighed i forskellige køoperationer som hentning, indsættelse, sletning osv.
Køen venter på at blive ikke-tom på tidspunktet for hentning af nogen elementer. BlockingQueue bør ikke indeholde null-elementer. Implementeringen af denne kø er trådsikker.
Syntaksen for BlockingQueue er:
public interface BlockingQueueextends Queue
10) Forklar tilsidesættelse lig () metode
Ligemetoden bruges til at kontrollere ligheden mellem to objekter. I tilfælde af at hvis programmøren ønsker at kontrollere et objekt baseret på egenskaben, skal det tilsidesættes.
11) Hvad er forskellen mellem Comparable og Comparator?
Forskellen mellem Comparable og Comparator er:
Sammenlignelig | Komparator |
Comparable giver comparTo () -metoden til at sortere elementer i Java. | Comparator giver sammenligningsmetoden () til at sortere elementer i Java. |
Sammenlignelig grænseflade findes i java.lang-pakken. | Comparator interface findes i java. util pakke. |
Sorteringslogikken skal være i samme klasse, hvis objekt du skal sortere. | Sorteringslogikken skal være i en separat klasse for at skrive forskellige sorteringer baseret på forskellige attributter for objekter. |
Den klasse, hvis objekter du vil sortere, skal implementere den sammenlignelige grænseflade. | Klasse, hvis objekter du vil sortere, behøver ikke at implementere en komparatorgrænseflade. |
Det giver enkelt sorteringssekvenser. | Det giver flere sorteringssekvenser. |
Denne metode kan sortere dataene efter den naturlige sorteringsrækkefølge. | Denne metode sorterer dataene efter den tilpassede sorteringsrækkefølge. |
Det påvirker den oprindelige klasse. dvs. den aktuelle klasse ændres. | Det påvirker ikke den oprindelige klasse, dvs. den aktuelle klasse ændres ikke. |
Implementeres ofte i API'en ved hjælp af kalender, indpakningsklasser, dato og streng. | Det er implementeret til at sortere forekomster af tredjepartsklasser. |
Alle indpakningsklasser og strengklasser implementerer den sammenlignelige grænseflade. | De eneste implementerede klasser af Comparator er Collator og RuleBasedColator. |
12) Forklar lig () med eksempel
Lig () verificerer, om nummerobjektet er lig med objektet, som sendes som et argument eller ej.
Syntaksen for ligemetoden () er:
public boolean equals(Object o)
Denne metode tager to parametre 1) ethvert objekt, 2) returværdi. Det returnerer sandt, hvis det godkendte argument ikke er nul og er et objekt af en lignende type med den samme numeriske værdi.
Eksempel:
import java.lang.Integer;public class Test {public static void main(String args[]) {Integer p = 5;Integer q = 20;Integer r =5;Short s = 5;System.out.println(p.equals(q));System.out.println(p.equals(r));System.out.println(p.equals(s));}}
13) Angiv fordelene ved generisk indsamling
Fordelene ved at bruge den generiske samling er:
- Hvis programmørerne bruger generisk klasse, behøver de ikke typecasting.
- Det er typesikkert og kan kontrolleres på tidspunktet for udarbejdelsen.
- Det giver kodens stabilitet ved at opdage fejl på kompileringstidspunktet.
14) Forklar metoden til at konvertere ArrayList til Array og Array til ArrayList
Programmører kan konvertere en Array til ArrayList ved hjælp af asList () -metoden i Arrays-klasse. Det er en statisk metode i Arrays-klassen, der accepterer List-objektet. Syntaksen for metoden asList () er:
Arrays.asList(item)
Java-programmører kan konvertere ArrayList til List-objektet ved hjælp af syntaks:
List_object.toArray(new String[List_object.size()])
15) Giv et eksempel på ArrayList
Eksemplet på omvendt ArrayList er:
import java.util.ArrayList;class Test_ArrayList {public static void main(String[] args) {//Creating a generic ArrayListArrayListarlTest = new ArrayList ();//Size of arrayListSystem.out.println("Size of ArrayList at creation: " + arlTest.size());//Lets add some elements to itarlTest.add("D");arlTest.add("U");arlTest.add("K");arlTest.add("E");//Recheck the size after adding elementsSystem.out.println("Size of ArrayList after adding elements: " + arlTest.size());//Display all contents of ArrayListSystem.out.println("List of all elements: " + arlTest);//Remove some elements from the listarlTest.remove("D");System.out.println("See contents after removing one element: " + arlTest);//Remove element by indexarlTest.remove(2);System.out.println("See contents after removing element by index: " + arlTest);//Check size after removing elementsSystem.out.println("Size of arrayList after removing elements: " + arlTest.size());System.out.println("List of all elements after removing elements: " + arlTest);//Check if the list contains "K"System.out.println(arlTest.contains("K"));}}
16) Giv et eksempel for at sortere en matrix i faldende rækkefølge
Eksemplet på sortering af en matrix i faldende rækkefølge er:
package com.guru99;public class SelectionSortAlgo {public static void main(String a[]){int[] myArray = {860,8,200,9};System.out.println("------Before Sort-----");printArray(myArray);selection(myArray);//sorting array using selection sortSystem.out.println("-----After Sort-----");printArray(myArray);}public static void selection(int[] array){for (int i = 0; i < array.length - 1; i++){ System.out.println("Sort Pass Number "+(i+1));int index = i;for (int j = i + 1; j < array.length; j++){System.out.println("Comparing "+ array[index] + " and " + array[j]);if (array[j] < array[index]){System.out.println(array[index] + " is greater than " + array[j] );index = j;}}int smallerNumber = array[index];array[index] = array[i];array[i] = smallerNumber;System.out.println("Swapping Elements: New Array After Swap");printArray(array);}}static void printArray(int[] array){for(int i=0; i < array.length; i++){System.out.print(array[i] + " ");}System.out.println();}}
17) Forklar de grundlæggende grænseflader i Java-samlingsrammen
Java collection framework er en rod i samlingshierarkiet. Det repræsenterer en gruppe objekter som dets elementer. Java-programmeringssproget giver ikke en direkte implementering af en sådan grænseflade.
- Sæt: Sæt er en samling uden duplikatelementer. Det bruger hashtable til lagring af elementer.
- Liste: Liste er en ordnet samling, der kan indeholde duplikatelementer. Det giver udviklere adgang til alle elementer fra sin indbakke. Listen er som et array, der har en dynamisk længde.
- KORT: Det er et objekt, der kortlægger nøgler til værdier. Det kan ikke indeholde duplikatnøgler. Hver nøgle kan kortlægges til mindst en værdi.
18) Hvad er funktionerne i Java Hashmap?
Funktioner ved Java Hashmap er:
- Værdierne kan gemmes på et kort ved at danne et nøgleværdipar. Værdien kan hentes ved hjælp af nøglen ved at overføre den til den korrekte metode.
- Hvis der ikke findes noget element på kortet, kaster det et 'NoSuchElementException'.
- HashMap gemmer kun objektreferencer. Derfor er det umuligt at bruge primitive datatyper som dobbelt eller int. Brug indpakningsklasse (som heltal eller dobbelt) i stedet.
19) Hvad er en stak?
En stak er et specielt område i computerens hukommelse, der gemmer midlertidige variabler oprettet af en funktion. I stack erklæres, lagres og initialiseres variabler under kørselstid.
20) Hvad er linket liste?
En linket liste er en datastruktur, der kan gemme en samling af varer. Med andre ord kan sammenkædede lister bruges til at gemme flere objekter af samme type. Hver enhed eller element på listen kaldes en knude. En knude på den sammenkædede liste har sine data og adressen på den næste knude. Det er som en kæde. Tilknyttede lister bruges til at oprette grafer og træer.
21) Giv et eksempel på ArrayList
Eksemplet med ArrayList er:
import java.util.ArrayList;class Test_ArrayList {public static void main(String[] args) {//Creating a generic ArrayListArrayListarlTest = new ArrayList ();//Size of arrayListSystem.out.println("Size of ArrayList at creation: " + arlTest.size());//Lets add some elements to itarlTest.add("D");arlTest.add("U");arlTest.add("K");arlTest.add("E");//Recheck the size after adding elementsSystem.out.println("Size of ArrayList after adding elements: " + arlTest.size());//Display all contents of ArrayListSystem.out.println("List of all elements: " + arlTest);//Remove some elements from the listarlTest.remove("D");System.out.println("See contents after removing one element: " + arlTest);//Remove element by indexarlTest.remove(2);System.out.println("See contents after removing element by index: " + arlTest);//Check size after removing elementsSystem.out.println("Size of arrayList after removing elements: " + arlTest.size());System.out.println("List of all elements after removing elements: " + arlTest);//Check if the list contains "K"System.out.println(arlTest.contains("K"));}}
22) Forklar sammenkædet liste understøttet af Java
To typer af linket liste understøttet af Java er:
- Enkeltkædet liste: Enkeltkædet liste er en type datastruktur. På en enkelt linket liste gemmer hver node på listen indholdet af noden og en reference eller markør til den næste node på listen. Den gemmer ikke nogen henvisning eller markør til den forrige node.
- Dobbeltkoblede lister: Dobbeltkædede lister er en speciel type sammenkædet liste, hvor gennemkørsel på tværs af dataelementerne kan udføres i begge retninger. Dette gøres muligt ved at have to links i hver node, en der linker til den næste node og en anden der forbinder til den forrige node.
23) Forklar metoderne fra køgrænsefladen?
Metoder til Java-kø-interface er:
Metode | Beskrivelse |
boolsk tilføjelse (objekt) | Indsætter specificeret element i køen. Det vender tilbage, hvis det bliver en succes. |
boolsk tilbud (objekt) | Denne metode bruges til at indsætte elementet i køen. |
Fjern objekt () | Det henter og fjerner køhovedet. |
Objektafstemning () | (): Det henter og fjerner køhoved eller returnerer null, hvis det er tomt. |
Objektafstemning () | Det henter og fjerner køhoved eller returnerer null, hvis det er tomt. |
Objektelement () | Henter dataene fra køen, men fjerner ikke hovedet. |
Objektkig () | Henter dataene fra køen, men fjerner ikke hovedet, eller hvis køen er køen er tom, vil den hente nul. |
24) Nævn metoderne fra Stack-klassen
Vigtige metoder leveret af Stack-klassen er:
- push (): Skub element i stakken.
- tom (): Denne metode finder ud af, om stakken er tom eller ej.
- pop (): Denne Java-samling rammemetode fjerner objektet fra stakken.
- search (): Denne metode søger efter emner i stakken.
- peek (): Denne Java-metode ser på stakobjektet uden at fjerne det.
25) Definer emptySet () i Java-samlingens ramme
Metode emptySet (), der returnerer det tomme uforanderlige sæt, når programmører prøver at fjerne nul-elementer. Sættet, der returneres af emptySet (), kan serienummeres. Syntaksen for denne metode er:
offentlig statisk endelig
26) Sondre mellem samling og samlinger
Forskellen mellem samling og samlinger er:
Kollektion | Samlinger |
Samlingen er en grænseflade. | Samlinger er en klasse. |
Det repræsenterer en gruppe objekter som en enkelt enhed. | Den definerer forskellige hjælpemetoder til indsamlingsobjekter. |
Samlingen er rodgrænsefladen til Java Collection-rammen. | Samlinger er en generel hjælpeklasse. |
Denne grænseflade bruges til at udlede samlingsdatastrukturer. | Denne klasse indeholder statiske metoder til at manipulere datastrukturen. |
27) Definere LinkedHashSet i Java Collection-rammen?
LinkedHashSet er en underklasse af klassen kaldet HashSet og implementerer sætgrænsefladen. Det er en velordnet version af HashSet, der opretholder en dobbeltkoblet liste på tværs af alle dens elementer.
28) Hvad er forskellen mellem failfast og failsafe?
Fejlagtig | Fejlsikker |
Det tillader ikke ændring af indsamling under iterering. | Det muliggør modifikation af indsamling under iterering. |
Det kan kaste ConcurrentModificationException | Det kan ikke kaste nogen undtagelse. |
Den bruger den originale samling til at krydse elementerne. | Den bruger en original samlingskopi til at krydse elementerne. |
Der er ikke behov for ekstra hukommelse. | Der er et krav om ekstra hukommelse. |
29) Listeoversigter over kortinterface
Samlingsvisning af kortgrænsefladen er: 1) visning af nøglesæt, 2) visning af værdisæt og 3) visning af indgangssæt.
30) Hvad er fordelene ved Collection Framework i Java?
Fordelene ved Collection Framework i Java er:
- Java collection framework tilbyder yderst effektive og effektive datastrukturer, der forbedrer programmets nøjagtighed og hastighed.
- Programmet udviklet med Java-indsamlingsrammen er let at vedligeholde.
- En udvikler kan blande klasser med andre typer, der resulterer i øget genanvendelighed af kode.
- Java-indsamlingsrammen giver programmører mulighed for at ændre de primitive samlingstyper, som de vil.
31) Hvad er en god måde at sortere samlingobjekterne på Java på?
En god måde at sortere Java-indsamlingsobjekter på er at bruge Comparable og Comparator-grænseflader. En udvikler kan bruge Collections.sort (), elementerne er sorteret efter ordrenævnelsen i comparTo ().
Når en udvikler bruger Collections, sorter (Comparator), sorterer den objekterne afhænger af compar () i Comparator-grænsefladen.
32) Forklar vektor i Java
Vektoren er den samme som en matrix. Den har komponenter, der kan tilgås ved hjælp af en indeksværdi. Vektorer kan indeholde en ældre metode, der hverken er en del af samlingsrammen.
33) Hvad er forskellen mellem Set og Map?
Sæt | Kort |
Sæt tilhører package-java.util. | Kortet tilhører pakke-java.util. |
Det kan udvide samlingsgrænsefladen. | Det udvider ikke samlingsgrænsefladen. |
Det tillader ikke duplikatværdier. | Det tillader duplikerede værdier. |
Sæt kan kun sortere en nulværdi. | Kortet kan sortere flere nulværdier. |
34) Definer ordbogsklasse
Ordbogsklassen er en Java-klasse, der har mulighed for at gemme nøgleværdipar.
35) Definer EnumSet
java.util.EnumSet er Set-implementering, der kan bruges med enumtyper. EnumSet, der har alle elementer, skal komme fra en enumtype, der er angivet eksplicit eller implicit. Det er ikke synkroniseret, og også nul-nøgler er ikke tilladt. EnumSet giver metoder som EnumSetof (E først, E
... hvile), complementOf (EnumSet s) og copyOf (samling c).36) Hvad er de to måder at fjerne dubletter fra ArrayList på?
To måder at fjerne dubletter fra ArrayList er:
- HashSet: Udvikler kan bruge HashSet til at fjerne duplikatelementet fra ArrayList. Ulempen er, at det ikke kan bevare indsættelsesrækkefølgen.
- LinkedHashSet: Udviklere kan også opretholde rækkefølgen for indsættelse ved at bruge LinkedHashSet i stedet for HashSet.
37) Hvad er IdentityHashMap?
IdentityHashMap er en klasse, der implementerer Serialiserbare, klonbare grænseflader, kort og udvider klassen AbstractMap. Det er designet til det tilfælde, hvor der er behov for semantik til reference-ligestilling.
38) Hvad er WeakHashMap?
WeakHashMap er en implementering af Java Map. Det bruges til at gemme svage referencer til dens nøgler. Sortering ved hjælp af dette kort gør det muligt at samle et nøgleværdipar som skrald. Der henvises ikke til dens nøgle uden for WeakHashMap.
39) Hvad er metoderne til at gøre indsamlingstrådsikker?
Metoderne til at gøre indsamlingstråden sikker er:
- Collections.synchronizedList (liste);
- Collections.synchronizedMap (kort);
- Collections.synchronizedSet (sæt);
40) Forklar UnsupportedOperationException
UnsupportedOperationException er en undtagelse, der kastes på metoder, der ikke understøttes af den faktiske samlingstype.
For eksempel laver udvikleren en skrivebeskyttet liste ved hjælp af "Collections.unmodifiableList (list)" og ringer til call (), add () eller remove () -metoden. Det skal tydeligt kaste UnsupportedOperationException.
41) Navngiv de samlingsklasser, der giver tilfældig elementadgang til dets elementer
Samlingsklasser, der giver tilfældig elementadgang til dets elementer, er: 1) ArrayList, 2) HashMap, 3) TreeMap og 4) Hashtable.
42) Forklar forskellen mellem kø og Deque.
Kø | Deque |
Det kaldes en kø med en ende | Det kaldes en dobbeltkø |
Elementer i køen tilføjes eller fjernes fra den ene ende | Elementer i køen tilføjes fra begge sider kan tilføjes og fjernes fra begge ender |
Det er mindre alsidigt. | Det er mere alsidigt. |
43) Nævn implementeringslisten og sæt grænsefladen
Klasseimplementeringslisteinterface : 1) ArrayList, 2) Vector og 3) LinkedList.
Class-implementeringssæt-interface: 1) HashSet og 2) TreeSet.
44) Forklar designmønsteret efterfulgt af Iterator
Iteratoren følger detaljerne i iterator-designmønsteret. Det giver udvikleren mulighed for at navigere gennem objektsamlingerne ved hjælp af en fælles grænseflade uden at kende dens implementering.
45) Hvad er peek () af køgrænsefladen?
Peek () er en metode til køgrænseflade. Det henter alle elementerne, men fjerner ikke køhovedet. Hvis køen er tom, returnerer denne metode nul.
46) Hvad er CopyOnWriteArrayList?
CopyOnWriteArrayList er en variant af ArrayList, hvor operationer som tilføj og sæt implementeres ved at oprette en kopi af arrayet. Det er trådsikkert, og dermed kaster det ikke ConcurrentModificationException. Denne ArrayLists tillader alle elementer, inklusive null.
47) Skel mellem ArrayList og LinkedList
Forskellen mellem ArrayList og LinkedList er:
ArrayList | LinkedList |
Det bruger et dynamisk array. | Den bruger en dobbeltkoblet liste. |
ArrayList foretrækkes ikke til manipulation. | LinkedList foretrækkes til manipulation. |
ArrayList giver tilfældig adgang. | LinkedList giver ikke tilfældig adgang. |
ArrayLists s gemmer kun objekter, hvorfor det tager mindre omkostninger ved hukommelsen | LinkedList gemmer både objekt og adresseobjekt; derfor tager det mere overhead af hukommelse. |
48) Forklar metoderne til iterator-interface
Metoder til iterator-interface er:
Metode | Beskrivelse |
offentlig boolsk hasNext () | Det returnerer sandt i iteratoren har elementer; Ellers returnerer den falsk. |
offentlig Objekt næste () | Denne metode returnerer elementet og flytter markøren til den næste værdi. |
offentlig tomrum fjern () | Denne Java-metode kan fjerne de sidste elementer, der returneres af iteratoren. Offentlig fjernelse af tomrum () er mindre brugt. |
49) Hvad er metoderne i HashSet-klassen?
Metoder til HashSet-klassen er:
Metoder | Beskrivelse |
boolsk tilføjelse (Objekt o) | Denne metode tilføjer nævnte element til dette sæt, hvis det ikke allerede er til stede. |
boolsk indeholder (Objekt o): | Det returnerer sandt, hvis sættet indeholder det angivne element. |
ugyldigt klart (): | Denne metode fjerner sætelementer. |
boolsk isEmpty (): | Det returnerer sandt i sagen, sættet har ingen elementer. |
boolsk fjernelse (Objekt o): | Det fjerner det angivne element fra sættet. |
objektklon (): | Denne metode returnerer en kopi af HashSet-forekomsten: selve elementerne klones ikke. |
iterator iterator () | Det returnerer en iterator over elementerne i dette sæt. |
int størrelse (): | Det returnerer antallet af tilgængelige elementer i sættet. |
50) Hvad er metoderne i Java TreeSet-klassen?
Metoderne i Java TreeSet-klassen er:
Metoder | Beskrivelser |
boolsk addAll (samling c) | Føj alle elementerne i den angivne samling til dette sæt. |
boolean indeholder (Objekt o) | Returnerer sandt, hvis sættet indeholder nævnte element. |
boolsk isEmpty () | Denne Java-metode returnerer sandt, hvis dette sæt ikke indeholder nogen elementer. |
boolsk fjernelse (Objekt o) | Fjern det angivne element fra sættet. |
ugyldig tilføjelse (Objekt o) | Det tilføjer det angivne element til sættet. |
ugyldigt klart () | Denne Java-metode fjerner alle elementerne fra sættet. |
51) Forklar sammenkædet HashSet
Java LinkedHashSet-klasse er en sammenkædet liste og implementering af Hash-tabel af Set-interface. Den indeholder unikke elementer, der er de samme som et HashSet. Linked HashSet i Java giver også valgfri sætoperationer, der kan opretholde rækkefølgen for indsættelse.
52) Hvad er de vigtige metoder, der anvendes på en sammenkædet liste?
De vigtige metoder, der anvendes på den sammenkædede liste, er:
Metode | Beskrivelse |
boolsk tilføjelse (Objekt o) | Det bruges til at tilføje det angivne element til slutningen af vektoren. |
boolean indeholder (Objekt o) | Det er en metode, der returnerer sandt, hvis denne liste indeholder det angivne element. |
ugyldig tilføjelse (int-indeks, objektelement) | Indsætter elementet ved det angivne element i vektoren. |
ugyldig addFirst (Objekt o) | Det bruges til at indsætte det givne element i starten. |
ugyldig addLast (Objekt o) | Det bruges til at tilføje det givne element til slutningen. |
Int størrelse () | Denne metode kan bruges til at returnere det samlede antal elementer i en liste. |
boolsk fjernelse (Objekt o) | Det kan fjerne den første forekomst af det angivne element fra denne liste. |
int indexOf (Objektelement) | Denne Java-metode returnerer indekset med den første forekomst af nævnte element i denne liste eller -1. |
int lastIndexOf (objektelement) | Det er en Java-metode, der returnerer indekset med den sidste forekomst af det angivne element på denne liste eller -1. |
53) Liste over forskellige klasser, der er tilgængelige i sæt
Forskellige klasser tilgængelige i sæt er: HashSet, TreeSetand og LinkedHashSet.
54) Liste over metoder, der er tilgængelige i Java Queue-interface
- boolsk tilføjelse (objekt)
- boolsk tilbud (objekt)
- genstand fjern ()
- objektafstemning ()
- objektelement ()
- objekt kigge ()
55) Skel mellem liste og sæt.
Liste | Sæt |
En ordnet samling af elementer | En uordnet samling af elementer |
Bevarer indsættelsesordren | Bevarer ikke indsættelsesordren |
Duplicate værdier er tilladt | Duplikatværdier er ikke tilladt |
Et hvilket som helst antal nulværdier kan gemmes | Der kan kun gemmes en nulværdi |
ListIterator kan bruges til at krydse listen i alle retninger | ListIterator kan ikke bruges til at krydse et sæt |
Indeholder en ældre klasse kaldet vektor | Indeholder ikke nogen ældre klasse |
56) Forklar for hver løkke med eksempel
For-Every Loop er en anden form for for loop, der bruges til at krydse arrayet. Det reducerer koden markant, og der er ingen brug af indekset eller rettere tælleren i sløjfen.
Eksempel på for hver løkke:
class UsingForEach {public static void main(String[] args) {String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};//The conventional approach of using the for loopSystem.out.println("Using conventional For Loop:");for(int i=0; i< arrData.length; i++){System.out.println(arrData[i]);}System.out.println("\nUsing Foreach loop:");//The optimized method of using the for loop - also called the foreach loopfor (String strTemp : arrData){System.out.println(strTemp);}}}
57) Forklar diamantoperatøren
Diamantoperatør gør det muligt for kompilatoren at indsamle typeargumenterne for generisk klasse. I Java SE kan udvikleren erstatte den parametriserede konstruktør med en tom parametersæt (<>) kendt som diamantoperator.
58) Forklar tilfældig adgangsgrænseflade
RandomAccess-interface bruges af List-implementeringer til indikation af, at de understøtter hurtigt.
59) Navngiv de indsamlingsklasser, der implementerer random access interface
Java.util-pakken har klasser, der kan implementere interface til tilfældig adgang er: CopyOnWriteArrayList, Stack, ArrayList og Vector.
60) Hvordan tilmeldes flere ArrayLists?
Listen indeholder en addall () metode flere ArrayList i Java.
Overvej f.eks. To lister 1) areaList og 2) secondAreaList. En udvikler kan slutte sig til dem ved hjælp af addall () som:
areaList.addAll (secondAreaList);
61) Forklar deque-interface
Java.util.Deque er Java, en grænseflade, der udvider køgrænsefladen. Det giver støtte til indsættelse og sletning af elementer i begge ender. Denne kø kaldes også en kø med dobbelt ende.
62) Forklar Linkedhashmap
LinkedHashMap er implementeringen af kortgrænsefladen. Det kan også udvide HashMap-klassen. Derfor, ligesom HashMap, giver LinkedHashMap Java-udviklere mulighed for at tillade en nøgle og mere end en nulværdi.
63) Forklar metoder til fjernelse af elementer fra ArrayList
Metoderne til at fjerne elementer fra ArrayList er:
Metode | Beskrivelse |
klar() | Denne metode fjerner elementerne fra ArrayList. |
fjern (int-indeks) | Denne metode til ArrayList kan fjerne elementet i en bestemt position. |
fjern (Objekt o) | Det kan fjerne den første forekomst af nævnte element fra ArrayList. |
Fjern alt() | Det kan fjerne listen over elementer, der er i en bestemt samling. |
removeIf (Forudsæt super E> filter) | Denne metode fjerner elementer, der tilfredsstiller omtale af et prædikat. |
64) Forklar kort. post i kort
Map.entry er en Java-grænseflade til java.util. Det har en indlejret grænseflade i Map. Denne grænseflade skal kvalificeres efter navnet på klassen eller grænsefladen, som den er medlem af. Derfor er det kvalificeret som et kort. Indgang. Det repræsenterer et nøgle- og værdipar, der kan danne et element i et kort.
Denne metode returnerer en visning af samlingen. Overvej f.eks. CityMap som et kort. Udvikleren kan bruge entrySet () til at få den indstillede visning af kort med et element Map.Entry. Programmør kan også bruge getKey () og getValue () på Map.Entry for at få parret nøgle og værdi på kortet.
65) Hvilken metode bruges til at sortere en matrix i stigende rækkefølge?
Rammemetode til Java-samling, Collections.sort () bruges til at sortere en matrix i stigende rækkefølge.
66) Hvordan måles en ArrayLists ydeevne?
Udførelsen af ArrayList kan måles ved:
- Tilføjelse af et element: Udvikler kan tilføje et element i slutningen af ArrayList ved hjælp af add (E e) -metoden. Det er O (1). I det værste scenarie går det muligvis til O (n). Dette kan ske, hvis udvikleren tilføjer flere elementer end array-kapaciteten.
- Henter et element : - Udvikler kan få adgang til arrayindekset ved hjælp af get (int index). Ydelsen kan i dette tilfælde måles ved hjælp af ArrayList get () er O (1).
- Fjernelse af et element: Hvis udviklerne fjerner elementet ved hjælp af remove (int-indekset), kan ydeevnen for ArrayList beregnes ved hjælp af den fjerne (int-index) operation er O (n - index) metode.
67) Forklar LinkedList-klassen
LinkedList-klasse i Java implementerer Deque og List ved hjælp af en dobbeltkoblet liste. Der er en privat klasseknude på en dobbeltkoblet liste, der giver dens struktur. Det har også en varevariabel til at holde værdien og henvise til Node-klassen. Dette kan bruges til at forbinde den næste og forrige knudepunkter.
68) Giv et eksempel på Hashmap
Eksemplet med Hashmap er:
import java.util.HashMap;import java.util.Map;public class Sample_TestMaps{public static void main(String[] args){MapobjMap = new HashMap ();objMap.put("Name", "Suzuki");objMap.put("Power", "220");objMap.put("Type", "2-wheeler");objMap.put("Price", "85000");System.out.println("Elements of the Map:");System.out.println(objMap);}}
69) Hvordan gentages kort?
Udvikleren kan ikke gentage kort direkte, men denne grænseflade har to metoder, der giver visningssæt af kort. Disse metoder er:
- Set
> entrySet (): Det er en metode, der returnerer et sæt med de poster, der er nævnt på kortet. Disse poster er generelt indsigede, som har typen Map. Indgang. - Set
keySet (): Denne Java-metode returnerer et sæt, der har kortnøglen .
70) Forklar Treemap i Java
TreeMap er en klasse, der implementerer kortgrænsefladen LinkedHashMap og HashMap. Det kan også implementere NavigableMap-interface og kan udvide klassen AbstractMap.
71) Hvad er forskellen mellem Hashmap og Hashtable?
Hashmap | Hashtable |
Det er ikke synkroniseret. | Det er synkroniseret. |
HashMap tillader en nøgle som en nulværdi. | HashTable tillader ikke nulværdier. |
Iterator bruges til at krydse HashMap. | Enten Iterator eller Enumerator bruges til at krydse en HashTable. |
Det kan bruges til både HashTable, HashMap og er fail-fast. | Den kan bruges med HashTable og er fejlsikker. |
HashMap fungerer hurtigere end HashTable. | Hashtable er ikke meget hurtigere sammenlignet med HashMap. |
72) Forklar den interne funktion af HashSet i Java
HashSet i Java bruger internt HashMap til at gemme elementer. Det kan også gemme unikke værdier uden duplikatværdier.
I Java kan HashSet-udvikleren have add (E e) -metode, der kun tager det element, der skal tilføjes som parameter. Det accepterer ikke nøgle- og værdipar.
73) Forklar Big-O-notation med et eksempel
Big-O-notationen viser udførelsen af en algoritme som antallet af elementer i ArrayList. En udvikler kan bruge Big-O notation til at vælge implementeringen af samlingen. Det er baseret på ydeevne, tid og hukommelse.
For eksempel er ArrayList get (indeks i) en metode til at udføre en konstant tidsoperation. Det afhænger ikke af det samlede antal tilgængelige elementer på listen. Derfor er præstationen i Big-O notation O (1).
74) Forklar de bedste fremgangsmåder i Java Collection Framework
De bedste fremgangsmåder i Java Collection Framework er:
- Vælg den korrekte type samling afhænger af behovet.
- Undgå genopvaskning eller ændring af størrelse ved at estimere det samlede antal elementer, der skal gemmes i samlingsklasser.
- Skriv et Java-program i form af grænseflader. Dette hjælper udvikleren med at ændre implementeringen uden besvær i fremtiden.
- En udvikler kan bruge Generics til typesikkerhed.
- Brug uforanderlige klasser givet af Java Development Kit. Undgå implementering af lig () og hashCode () til tilpassede klasser.
- En programmør skal bruge samlingens hjælpeklasse til algoritmer eller for at få skrivebeskyttede, synkroniserede eller tomme samlinger. Dette vil forbedre kodegenanvendelighed med lav vedligeholdelsesevne.
75) Forklar forskellige typer køer i Java
Der er tre typer køer i Java:
- Prioritetskø: Det er en speciel type kø, hvor elementer sorteres efter deres naturlige rækkefølge eller brugerdefinerede komparator.
- Cirkulær kø: Det er en type kø, hvor brugerhandlinger udføres baseret på FIFO-metoden. Det sidste element er forbundet til den første position for at skabe en cirkel.
- Dobbeltkø: En dobbeltkø er en abstrakt datatype, der generaliserer en kø. Elementerne i denne kø kan tilføjes eller fjernes fra enten hoved eller hale.
76) Hvad er forskellen mellem stak og kø?
Stak | Kø |
Arbejdsprincippet for stakken er LIFO. | Funktionsprincip for kø er FIFO. |
Den ene ende bruges til at udføre indsættelse eller sletning af elementer. | Den ene ende bruges til at udføre indsættelse, og en anden ende bruges til sletning af elementer. |
Den bruger en markør. | Det bruger to markører i en simpel kø. |
Det har ikke nogen form for variant. | Det har varianter som prioritetskø, cirkulær kø, dobbeltkølet kø. |
Det er let at bruge. | Det er ikke let at bruge. |
77) Hvad er forskellen mellem array og stack?
Forskellen mellem array og stack er:
Array | Stak |
Det er en samling af elementer, der identificeres af indekset. | Det er en indsamlingsoperation, der fungerer som operation push og pop. |
Det har elementer af datatyper, der er ens. | Det har forskellige datatyper, som er forskellige. |
Elementer kan fjernes eller tilføjes i arrayet ved hjælp af tilfældig adgangsfunktion. | Elementer kan fjernes eller tilføjes i en stak ved hjælp af LIFO-operation. |
78) Definer Iterator ()
Iteratoren () er en grænseflade, der giver metoder til at gentage indsamlingen. Iterator kan tage plads i Enumeration i Java. Det gør det muligt for den, der ringer op, at fjerne elementer fra samlingen. Metoden giver en generel måde at krydse ved hjælp af elementer i samlingen og implementering af iterator-designmønster.
79) Hvad er de forskellige måder at gentage over en liste?
Java collection Framework-programmør kan gentage sig over en liste på to måder: 1) Brug af iterator og 2) brug af den til hver loop.
80) Hvad er fordelene ved stakken?
Fordelene ved stakken er:
- Det hjælper dig med at administrere dataene i en Last In First Out (LIFO) metode, hvilket ikke er muligt med den sammenkædede liste og array.
- Når en funktion kaldes, gemmes de lokale variabler i en stak, og den ødelægges automatisk, når den er returneret.
- En stak bruges, når en variabel ikke bruges uden for denne funktion.
- Det giver dig mulighed for at kontrollere, hvordan hukommelse allokeres og deallokeres.
- Stak renser automatisk objektet op.
- Ikke let ødelagt
- Variabler kan ikke ændres.