top 20 java interview programs
V tomto tutoriáli sme poskytli veľký zoznam základných pohovorových programov Java s príkladmi skutočných logických kódov, ktoré sa pýtajú v rozhovoroch Programovanie a kódovanie pre nováčikov a skúsených kandidátov.
Dôležité a základné programy Java, ktoré sa zvyčajne vyžadujú v technickom kole rozhovorov Java a Automation Interviews.
To sa teraz stalo bežnou praxou anketárov, ktorí sa pri rozhovoroch pýtali skôr na základné programy Java, než aby sa sústredili iba na teoretické aspekty.
Z tohto dôvodu sme prišli s myšlienkou vypísať niekoľko veľmi dôležitých programov Java spolu s náležitým vysvetlením každého programu.
Okrem toho sme zahrnuli aj príslušné výstupy, ktoré vám poskytnú vernú predstavu o tom, ako tento program fungoval. Priebeh programu a koncepcie sú v tomto článku všade, kde je to možné, správne vysvetlené.
Najobľúbenejšie otázky týkajúce sa programovania v jazyku Java
Zoznam najpopulárnejších otázok a odpovedí na otázky týkajúce sa programovania v jazyku Java je vysvetlený nižšie a tieto otázky vám pomôžu úspešne vyčistiť akýkoľvek rozhovor s automatizáciou.
Odporúčané čítanie => Pokryli sme Základné otázky týkajúce sa rozhovoru v prostredí Java v predchádzajúcich článkoch tu.
Otázka 1) Napíš program Java na obrátenie reťazca bez použitia vstavanej funkcie String.
Odpoveď: Tu inicializujeme reťazcovú premennú str a využívame triedu tvorcov reťazcov.
Objekt triedy tvorcu reťazcov str2 sa ďalej použije na doplnenie hodnoty uloženej v premennej reťazca str.
Potom používame zabudovanú funkciu tvorcu reťazcov (reverse ()) a ukladáme nový obrátený reťazec do str2. Nakoniec tlačíme str2.
Nasledujúci programový kód to vysvetľuje:
public class FinalReverseWithoutUsingStringMethods { public static void main(String() args) { // TODO Auto-generated method stub String str = 'Automation'; StringBuilder str2 = new StringBuilder(); str2.append(str); str2 = str2.reverse(); // used string builder to reverse System.out.println(str2); } }
Výkon:
noitamotuA
Q # 2) Napíšte program Java na obrátenie reťazca bez použitia vstavanej funkcie String reverse ().
Odpoveď: Existuje niekoľko spôsobov, ako môžete svoj reťazec obrátiť, ak máte dovolené používať ďalšie vstavané funkcie reťazca.
Metóda 1:
V tejto metóde inicializujeme reťazcovú premennú nazvanú str s hodnotou vášho daného reťazca. Potom tento reťazec prevádzame na znakové pole pomocou funkcie toCharArray (). Potom používame cyklus for na iteráciu medzi každým znakom v opačnom poradí a tlač každého znaku.
public class FinalReverseWithoutUsingInbuiltFunction { public static void main(String() args) { String str = 'Saket Saurav'; char chars() = str.toCharArray(); // converted to character array and printed in reverse order for(int i= chars.length-1; i>=0; i--) { System.out.print(chars(i)); } } }
Výkon:
náhradné zásoby
Metóda 2:
Toto je ďalšia metóda, pri ktorej deklarujete svoju reťazcovú premennú str a potom pomocou triedy skenera deklarujete objekt s preddefinovaným štandardným vstupným objektom.
Tento program prijme hodnotu reťazca prostredníctvom príkazového riadku (keď je vykonaný).
Použili sme nextLine (), ktorý bude čítať vstup s medzerami medzi slovami reťazca. Potom sme použili metódu split () na rozdelenie reťazca na jeho podreťazce (tu nie je uvedený oddeľovač). Nakoniec sme reťazec vytlačili v opačnom poradí pomocou slučky for.
import java.util.Scanner; public class ReverseSplit { public static void main(String() args) { // TODO Auto-generated method stub String str; Scanner in = new Scanner(System.in); System.out.println('Enter your String'); str = in.nextLine(); String() token = str.split(''); //used split method to print in reverse order for(int i=token.length-1; i>=0; i--) { System.out.print(token(i) + ''); } } }
Výkon:
Zadajte svoj reťazec
Pomôcka na testovanie softvéru
plehgnitseterawtfoS
Metóda 3:
Je to takmer ako metóda 2, ale tu sme nepoužili metódu split (). Na čítanie vstupného reťazca sme použili triedu skenera a nextLine (). Potom sme deklarovali celočíselnú dĺžku, ktorá má dĺžku vstupného reťazca.
Potom sme reťazec vytlačili v opačnom poradí pomocou slučky for. Použili sme však metódu charAt (index), ktorá vráti znak pri akomkoľvek konkrétnom indexe. Po každej iterácii bude znak zreťazený, aby sa premenná reťazca obrátila.
Nakoniec sme vytlačili premennú reverzného reťazca.
import java.util.Scanner; public class Reverse { public static void main(String() args) { // TODO Auto-generated method stub String original, reverse = ''; System.out.println('Enter the string to be reversed'); Scanner in = new Scanner(System.in); original = in.nextLine(); int length = original.length(); for(int i=length-1; i>=0; i--) { reverse = reverse + original.charAt(i); //used inbuilt method charAt() to reverse the string } System.out.println(reverse); } }
Výkon:
Zadajte reťazec, ktorý chcete obrátiť
automatizované testovanie
gnitset noitamotua
Otázka č. 3) Napíšte program Java, aby ste vymenili dve čísla pomocou tretej premennej.
Odpoveď: V tomto príklade sme použili triedu Scanner na deklaráciu objektu s preddefinovaným štandardným vstupným objektom. Tento program bude akceptovať hodnoty xay cez príkazový riadok (keď sa vykoná).
Použili sme nextInt (), ktorý od používateľa zadá hodnotu celočíselnej premennej „x“ a „y“. Deklarovaná je aj dočasná premenná.
Logika programu teraz prebieha takto - priraďujeme temp alebo tretiu premennú s hodnotou x a potom priraďujeme x s hodnotou y a opäť priraďujeme y s hodnotou temp. Takže po prvej úplnej iterácii bude mať temp hodnotu x, x bude mať hodnotu y a y bude mať temp (čo je x).
import java.util.Scanner; public class SwapTwoNumbers { public static void main(String() args) { // TODO Auto-generated method stub int x, y, temp; System.out.println('Enter x and y'); Scanner in = new Scanner(System.in); x = in.nextInt(); y = in.nextInt(); System.out.println('Before Swapping' + x + y); temp = x; x = y; y = temp; System.out.println('After Swapping' + x + y); } }
Výkon:
Zadajte x a y
Štyri, päť
98
Pred výmenou 4598
Po výmene 9845
Otázka č. 4) Napíšte program Java na výmenu dvoch čísel bez použitia tretej premennej.
Odpoveď: Všetky veci budú rovnaké ako vyššie uvedený program. Zmení sa iba logika. Tu priraďujeme x s hodnotou x + y, čo znamená, že x bude mať súčet oboch x a y.
Potom priradíme y k hodnote x - y, čo znamená, že odčítame hodnotu y od súčtu (x + y). Dokiaľ tu x stále má súčet oboch x a y. Ale y má hodnotu x.
Nakoniec v treťom kroku priradíme x hodnote x - y, čo znamená, že odčítame y (ktoré má hodnotu x) od súčtu (x + y). Týmto priradíte x hodnote y a naopak.
bezplatná aplikácia pre hodiny
import java.util.Scanner; class SwapTwoNumberWithoutThirdVariable { public static void main(String args()) { int x, y; System.out.println('Enter x and y'); Scanner in = new Scanner(System.in); x = in.nextInt(); y = in.nextInt(); System.out.println('Before Swapping
x = '+x+'
y = '+y); x = x + y; y = x - y; x = x - y; System.out.println('After Swapping without third variable
x = '+x+'
y = '+y); } }
Výkon:
Zadajte x a y
Štyri, päť
98
Pred výmenou
x = 45
y = 98
Po výmene bez tretej premennej
x = 98
y = 45
Otázka č. 5) Napíšte program Java, ktorý pomocou HashMap počíta počet slov v reťazci.
Odpoveď: Toto je program triedy zbierky, kde sme na uloženie reťazca použili program HashMap.
Najskôr sme deklarovali našu reťazcovú premennú nazvanú str. Potom sme použili funkciu split () ohraničenú jednou medzerou, aby sme mohli rozdeliť viac slov do reťazca.
Potom sme deklarovali HashMap a iterovali sme ho pomocou cyklu for. Vo vnútri cyklu for máme príkaz if-else, v ktorom kdekoľvek na konkrétnej pozícii mapa obsahuje kľúč, nastavíme počítadlo na túto pozíciu a pridáme objekt na mapu.
Počítadlo sa zakaždým zvýši o 1. Inak je počítadlo nastavené na 1.
Na záver tlačíme HashMap.
Poznámka: Rovnaký program možno použiť na výpočet počtu znakov v reťazci. Všetko, čo musíte urobiť, je odstrániť jeden priestor (odstrániť priestor oddelený metódou split) v reťazci () split = str.split (“”);
import java.util.HashMap; public class FinalCountWords { public static void main(String() args) { // TODO Auto-generated method stub String str = 'This this is is done by Saket Saket'; String() split = str.split(' '); HashMap map = new HashMap(); for (int i=0; i Výkon:
{Saket = 2, by = 1, this = 1, This = 1, is = 2, done = 1}
Otázka č. 6) Napíš program Java na iteráciu HashMap pomocou cyklu While a advance for loop.
Odpoveď: Sem sme vložili tri prvky do HashMap pomocou funkcie put ().
Veľkosť mapy sa dá zistiť pomocou metódy size (). Potom sme použili iteračnú slučku na iteráciu mapou, ktorá obsahuje jeden pár kľúč - hodnota pre každý prvok. Kľúče a hodnoty je možné získať pomocou funkcií getKey () a getValue ().
Rovnako sme použili pokročilý cyklus for loop, kde máme objekt „me2“ pre HashMap.
import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class HashMapIteration { public static void main(String() args) { // TODO Auto-generated method stub HashMap map = new HashMap (); map.put(2, 'Saket'); map.put(25, 'Saurav'); map.put(12, 'HashMap'); System.out.println(map.size()); System.out.println('While Loop:'); Iterator itr = map.entrySet().iterator(); while(itr.hasNext()) { Map.Entry me = (Map.Entry) itr.next(); System.out.println('Key is ' + me.getKey() + ' Value is ' + me.getValue()); } System.out.println('For Loop:'); for(Map.Entry me2: map.entrySet()) { System.out.println('Key is: ' + me2.getKey() + ' Value is: ' + me2.getValue()); } } }
Výkon:
3
While Loop:
Kľúč je 2 Hodnota je Saket
Kľúč je 25 Hodnota je Saurav
Kľúč je 12 Hodnota je HashMap
Pre slučku:
Kľúč je: 2 Hodnota je: Saket
Kľúč je: 25 Hodnota je: Saurav
Kľúč je: 12 Hodnota je: HashMap
Otázka č. 7) Napíšte program Java a zistite, či je číslo prvočíslo alebo nie.
Odpoveď: Tu sme deklarovali dve celé čísla temp a num a použili sme triedu Scanner s nextInt (pretože máme iba celé číslo).
Jedna boolovská premenná isPrime je nastavená na hodnotu true. Potom sme použili slučku začínajúcu od 2, zadáva sa menej ako polovica čísla a zvyšuje sa o 1 pre každú iteráciu. Temp bude mať zvyšok pre každú iteráciu. Ak je zvyšok 0, potom isPrime bude nastavený na False.
Na základe hodnoty isPrime prichádzame k záveru, že či už je naše číslo prvočíselné alebo nie.
import java.util.Scanner; public class Prime { public static void main(String() args) { // TODO Auto-generated method stub int temp, num; boolean isPrime = true; Scanner in = new Scanner(System.in); num = in.nextInt(); in.close(); for (int i = 2; i<= num/2; i++) { temp = num%i; if (temp == 0) { isPrime = false; break; } } if(isPrime) System.out.println(num + 'number is prime'); else System.out.println(num + 'number is not a prime'); } }
Výkon:
445
Číslo 445 nie je prvočíslo
Otázka č. 8) Napíšte program Java a zistite, či je reťazec alebo číslo palindróm alebo nie.
Odpoveď: Na overenie, či je číslo alebo reťazec palindróm alebo nie, môžete použiť ktorýkoľvek z vyššie uvedených programov pre reverzné reťazce.
Musíte zahrnúť jedno vyhlásenie if-else. Ak sa pôvodný reťazec rovná obrátenému reťazcu, potom je číslo palindróm, inak nie.
import java.util.Scanner; public class Palindrome { public static void main (String() args) { String original, reverse = ''; Scanner in = new Scanner(System.in); int length; System.out.println('Enter the number or String'); original = in.nextLine(); length = original.length(); for (int i =length -1; i>;=0; i--) { reverse = reverse + original.charAt(i); } System.out.println('reverse is:' +reverse); if(original.equals(reverse)) System.out.println('The number is palindrome'); else System.out.println('The number is not a palindrome'); } }
Výkon:
Pre reťazec
Zadajte číslo alebo reťazec
vijay
rub je: jajiv
Toto číslo nie je palindróm
Pre číslo-
Zadajte číslo alebo reťazec
99
opačná strana je: 99
Číslo je palindróm
Otázka č. 9) Napíšte program Java pre sériu Fibonacci.
Odpoveď: Fibonacciho séria je rad čísel, kde po úvodných dvoch číslach je každé vyskytujúce sa číslo súčtom dvoch predchádzajúcich čísel.
Napríklad 0,1,1,2,3,5,8,13,21 ………
V tomto programe sme opäť použili triedu Scanner s nextInt (diskutované vyššie). Spočiatku zadávame (prostredníctvom príkazového riadku) počet opakovaní, ktoré musí Fibonacci opakovať. Vyhlásili sme celé číslo num a inicializovali a, b s nulou a c s jednou. Potom sme použili cyklus na iteráciu.
Logika ide ako a je nastavená s hodnotou b, ktorá je 0, potom b je nastavená s hodnotou c, ktorá je 1. Potom je c nastavená so súčtom a aj b.
import java.util.Scanner; public class Fibonacci { public static void main(String() args) { int num, a = 0,b=0, c =1; Scanner in = new Scanner(System.in); System.out.println('Enter the number of times'); num = in.nextInt(); System.out.println('Fibonacci Series of the number is:'); for (int i=0; i Výkon:
Zadajte počet opakovaní
10
Fibonacciho séria čísla je:
0
1
1
dva
3
5
8
13
dvadsaťjeden
3. 4
Otázka č. 10) Napíšte program Java na iteráciu ArrayList pomocou cyklu for-loop, while-loop a advance for-loop.
Odpoveď: V tomto programe sme vložili tri prvky a vytlačili veľkosť poľa ArrayList.
Potom sme použili While Loop s iterátorom. Kedykoľvek má iterátor (nasledujúci) prvok, bude ho zobrazovať, až kým sa nedostaneme na koniec zoznamu. Takže to bude iterovať trikrát.
Rovnako sme urobili pre Advanced For Loop, kde sme vytvorili objekt s názvom obj pre zoznam volaných ArrayList. Potom vytlačte objekt.
Potom sme nastavili podmienku For Loop, kde je iterátor i nastavený na 0 index, potom sa zvyšuje o 1, kým sa nedosiahne limit alebo veľkosť ArrayList. Nakoniec sme každý prvok vytlačili pomocou metódy get (index) pre každú iteráciu For Loop.
import java.util.*; public class arrayList { public static void main(String() args) { ArrayList list = new ArrayList(); list.add('20'); list.add('30'); list.add('40'); System.out.println(list.size()); System.out.println('While Loop:'); Iterator itr = list.iterator(); while(itr.hasNext()) { System.out.println(itr.next()); } System.out.println('Advanced For Loop:'); for(Object obj : list) { System.out.println(obj); } System.out.println('For Loop:'); for(int i=0; i Výkon:
3
While Loop:
dvadsať
30
40
Pokročilé pre slučku:
dvadsať
30
40
Pre slučku:
dvadsať
30
40
Otázka č. 11) Napíšte program Java, aby ste demonštrovali výslovnú kontrolu stavu čakania.
Odpoveď: Existujú dva hlavné typy čakania - implicitné a explicitné. (V tomto programe neuvažujeme o plynulom čakaní)
Implicitné čakanie sú tie čakania, ktoré sa vykonajú bez ohľadu na akúkoľvek podmienku. V nasledujúcom programe môžete vidieť, že sa jedná o prehliadač Google Chrome, a na nastavenie vlastnosti, maximalizáciu okna, navigáciu v URL a lokalizáciu webových prvkov sme použili niektoré vstavané metódy.
WebDriverWait wait = new WebDriverWait(driver, 20); WebElement element2 = wait.until(ExpectedConditions.visibilityOfElementLocated(By.partialLinkText('Software testing - Wikipedia'))); element2.click();
V predchádzajúcej časti kódu vidíte, že sme vytvorili objekt čakajúci na WebDriverWait a potom sme vyhľadali WebElement s názvom element2.
Podmienka je nastavená tak, že webdriver bude musieť počkať, kým na webovej stránke uvidíme odkaz „Testovanie softvéru - Wikipedia“. Ak nenájde tento odkaz, nevykoná sa. Ak áno, klikne na tento odkaz myšou.
package Codes; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; public class explicitWaitConditionCheck { public static void main(String() args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver', 'C:\webdriver\chromedriver.exe'); ChromeOptions options = new ChromeOptions(); options.addArguments('--disable-arguments'); WebDriver driver = new ChromeDriver(); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.navigate().to('https://www.google.com'); WebElement element = driver.findElement(By.name('q')); element.sendKeys('Testing'); element.submit(); WebDriverWait wait = new WebDriverWait(driver, 20); WebElement element2 = wait.until(ExpectedConditions.visibilityOfElementLocated(By.partialLinkText('Software testing - Wikipedia'))); element2.click(); }}
Otázka č. 12) Napíš program Java a ukážku Scroll up / Scroll down.
Odpoveď: Všetky riadky kódov sú ľahko prepojiteľné, ako sme si už predstavili v predchádzajúcom príklade.
Avšak do tohto programu sme zahrnuli nášho JavascriptExecutor js, ktorý bude robiť rolovanie. Ak vidíte posledný riadok kódu, prešli sme cez window.scrollBy (arg1, arg2).
Ak sa chcete posúvať nahor, potom odovzdajte určitú hodnotu v arg1, ak sa chcete posunúť nadol, potom odovzdajte určitú hodnotu v arg2.
package Codes; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class ScrollDown { public static void main(String() args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver', 'C:\webdriver\chromedriver.exe'); WebDriver driver = new ChromeDriver(); JavascriptExecutor js = (JavascriptExecutor) driver; driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.get('https://www.google.com'); WebElement element = driver.findElement(By.name('q')); element.sendKeys('SoftwareTestingHelp'); element.sendKeys(Keys.ENTER); js.executeScript('window.scrollBy(0,1000)'); } }
Otázka č. 13) Vytvorením programu Java otvorte všetky odkazy na server gmail.com.
Odpoveď: Je to typický príklad pokročilého cyklu for, ktorý sme videli v našich predchádzajúcich programoch.
Po otvorení webu, ako je napríklad Gmail, pomocou get () alebo navigácie (). To (), môžete pomocou vyhľadávača tagName nájsť názov značky webu, ktorý vráti všetky značky.
Pokročili sme v cykle for, kde sme vytvorili nový odkaz WebElement link2 pre odkaz (ktorý už obsahuje všetky značky), potom sme všetky odkazy dostali cez getAttribute („href“) a všetky texty sme dostali cez getText ().
package Codes; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class openAllLinks { public static void main(String() args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.drive', 'C:\webdriver\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.manage().window().maximize(); driver.get('https://www.gmail.com/'); java.util.List link = driver.findElements(By.tagName('a')); System.out.println(link.size()); for (WebElement link2: link) { //print the links i.e. http://google.com or https://www.gmail.com System.out.println(link2.getAttribute('href')); //print the links text System.out.println(link2.getText()); } } }
Výkon:
Spúšťa sa ChromeDriver 2.38.551601 (edb21f07fc70e9027c746edd3201443e011a61ed) na porte 16163
Povolené sú iba miestne spojenia.
4
https://support.google.com/chrome/answer/6130773?hl=sk-GB
Uč sa viac
https://support.google.com/accounts?hl=sk-GB
Pomoc
https://accounts.google.com/TOS?loc=IN&hl=sk-GB&privacy=true
Ochrana osobných údajov
https://accounts.google.com/TOS?loc=IN&hl=sk-GB
Podmienky
Otázka č. 14) Ak chcete prejsť na predchádzajúcu kartu, napíšte kód selénu.
najlepšie herné štúdiá, pre ktoré môžete pracovať
Odpoveď: Predviedli sme použitie triedy Robot. Považujeme to za dôležitú tretiu stranu, pretože ak poznáte klávesové skratky, môžeme dosiahnuť inú navigáciu v prehliadači a na jeho kartách.
Napríklad , ak máte vo svojom chrome otvorené tri karty a chcete prejsť na strednú kartu, musíte na klávesnici stlačiť klávesovú skratku control + 2. To isté sa dá dosiahnuť aj prostredníctvom kódu.
Dodržujte nasledujúci kód (hneď potom, čo vidíme inštanciu triedy Robot). použili sme objekt triedy Robot nazývaný robot s dvoma zabudovanými metódami keyPress (KeyEvenet.VK_ *) a keyRelease (KeyEvenet.VK_ *).
package Codes; import java.awt.AWTException; import java.awt.Robot; import java.awt.event.KeyEvent; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class PreviousTab { public static void main(String() args) throws AWTException { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver', 'C:\webdriver\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.get('https://www.google.com'); WebElement element1 = driver.findElement(By.name('q')); element1.sendKeys('software testing help'); element1.sendKeys(Keys.ENTER); String a = Keys.chord(Keys.CONTROL,Keys.RETURN); driver.findElement(By.partialLinkText('Software Testing Help - A Must Visit Software Testing Portal')).sendKeys(a); Robot robot = new Robot(); // instantiated robot class robot.keyPress(KeyEvent.VK_CONTROL); // with robot class you can easily achieve anything if you know the shortcut keys robot.keyPress(KeyEvent.VK_2); // here, we have just pressed ctrl+2 robot.keyRelease(KeyEvent.VK_CONTROL); // once we press and release ctrl+2, it will go to the second tab. robot.keyRelease(KeyEvent.VK_2); //if you again want to go back to first tab press and release vk_1 } }
Otázka č. 15) Napíšte program Java, aby ste našli duplicitné znaky v reťazci.
Odpoveď: V tomto programe sme vytvorili reťazcovú premennú str a inicializovali celočíselný počet s nulou.
Potom sme vytvorili pole znakov na prevod našej reťazcovej premennej na znak. Pomocou slučky for vykonávame porovnanie rôznych znakov v rôznych indexoch.
Ak sa zhodujú dva znaky za sebou idúceho indexu, tento znak sa vytlačí a počítadlo sa po každej iterácii zvýši o 1.
public class DuplicateCharacters { public static void main(String() args) { // TODO Auto-generated method stub String str = new String('Sakkett'); int count = 0; char() chars = str.toCharArray(); System.out.println('Duplicate characters are:'); for (int i=0; i Výkon:
Duplicitné znaky sú:
k
t
Otázka č. 16) Napíšte program Java a nájdite druhé najvyššie číslo v poli.
Odpoveď: V tomto programe sme inicializovali pole s 10 náhodnými prvkami, z ktorých nájdeme druhé najvyššie číslo. Tu máme dve celé čísla - najväčšie a druhé najväčšie. Oba sú nastavené na prvý index prvku. Potom sme všetky prvky vytlačili pomocou slučky for.
Logikou teraz je, keď je prvok na 0. indexe väčší ako najväčší, potom priraďte arr (0) k najväčšiemu a druhý najväčší k najväčšiemu. Opäť platí, že ak je prvok na 0. indexe väčší ako parameter secondLargest, potom parametru secondLargest priraďte arr (0).
Toto sa bude opakovať pre každú iteráciu a nakoniec po porovnaní alebo dokončení iterácií až do dĺžky poľa získate druhý najväčší element.
package codes; public class SecondHighestNumberInArray { public static void main(String() args) { int arr() = { 100,14, 46, 47, 94, 94, 52, 86, 36, 94, 89 }; int largest = 0; int secondLargest = 0; System.out.println('The given array is:'); for (int i = 0; i secondLargest) { secondLargest = arr(i); } } System.out.println('
Second largest number is:' + secondLargest); System.out.println('Largest Number is: ' +largest); } }
Výkon:
Dané pole je:
100 14 46 47 94 94 52 86 36 94 89
Druhý najväčší počet je: 94
Najväčšie číslo je: 100
Otázka č. 17) Napíšte program Java a skontrolujte Armstrongovo číslo.
Odpoveď: Najskôr musíme pochopiť, čo je Armstrongovo číslo. Armstrongovo číslo je číslo, ktoré je súčtom kociek celej svojej jednotky, desiatky a stovky číslic pre trojciferné čísla.
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 = 1 + 125 + 27 = 153
Ak máte štvorciferné číslo, povedzme
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4 = 1 + 1296 + 81 + 256 = 1634
Teraz v tomto programe máme deklarované dočasné a celé čísla. Inicializovali sme c s hodnotou 0. Potom musíme priradiť celočíselnú hodnotu, ktorú ideme skontrolovať na Armstronga (v našom prípade povedzme 153). Potom sme našej dočasnej premennej priradili číslo, ktoré ideme skontrolovať.
Potom sme pri podmienenej kontrole použili, keď je zvyšok priradený k a počet je vydelený 10 a priradený n. Teraz je naša premenná c, ktorá bola pôvodne nastavená na nulu, priradená k c + (a * a * a). Predpokladajme, že musíme vyhodnotiť štvorciferné číslo, potom by malo byť c priradené k c + (a * a * a * a).
Nakoniec sme vložili príkaz if-else na podmienenú kontrolu, kde sme porovnali hodnotu obsiahnutú vc s temp (ktorá má v tomto okamihu uložené skutočné číslo). Ak sa zhoduje, potom je číslo Armstrong, inak nie.
class Armstrong{ public static void main(String() args) { int c=0,a,temp; int n=153;//It is the number to check Armstrong temp=n; while(n>0) { a=n%10; n=n/10; c=c+(a*a*a); } if(temp==c) System.out.println('armstrong number'); else System.out.println('Not armstrong number'); } }
Výkon:
Armstrongovo číslo
Otázka č. 18) Napíšte program Java a pomocou príkazu replace () odstráňte všetky prázdne miesta z reťazca.
Odpoveď: Toto je jednoduchý program, kde máme našu reťazcovú premennú str1.
Ďalšia reťazcová premenná str2 je inicializovaná voľbou replaceAll, čo je vstavaná metóda na odstránenie n počtu medzier. Nakoniec sme vytlačili str2, ktorá nemá medzery.
class RemoveWhiteSpaces { public static void main(String() args) { String str1 = 'Saket Saurav is a QualityAna list'; //1. Using replaceAll() Method String str2 = str1.replaceAll('\s', ''); System.out.println(str2); } } }
Výkon:
SaketSauravisaQualityAnalist
Otázka č. 19) Napíšte program Java, ktorý odstráni všetky medzery z reťazca bez použitia náhrady ().
Odpoveď: Toto je ďalší prístup k odstráneniu všetkých medzier. Opäť tu máme jednu reťazcovú premennú str1 s určitou hodnotou. Potom sme tento reťazec previedli na pole znakov pomocou toCharArray ().
Potom máme jeden objekt StringBuffer sb, ktorý sa použije na pridanie hodnoty uloženej v indexe chars (i) po tom, čo sme zahrnuli parameter loop a jeden if.
Ak je podmienka nastavená tak, že potom by sa prvok v indexe i v poli znakov nemal rovnať medzere alebo tabulátoru. Nakoniec sme vytlačili náš objekt StringBuffer sb.
class RemoveWhiteSpaces { public static void main(String() args) { String str1 = 'Saket Saurav is an Autom ation Engi ne er'; char() chars = str1.toCharArray(); StringBuffer sb = new StringBuffer(); for (int i = 0; i Výkon:
SaketSauravisanAutomationEngineer
Otázka č. 20) Napíšte program Java a prečítajte si program Excel.
Odpoveď: Tieto typy programov sa všeobecne používajú v selénovom rámci. Ku každému kroku sme pridali podrobné komentáre, aby bol program zrozumiteľnejší.
Logika sa spustí po tom, čo sme načítali hárok, v ktorom sú uložené údaje. Pokúšame sa importovať e-mail a heslo. Za týmto účelom načítame bunku metódou getRow () a getCell (). Povedzme, že v 1. a 2. bunke máme e-mail a heslá.
Potom nastavujeme typ bunky na reťazec. Potom vykonávame normálnu operáciu lokátora webových prvkov (By.id), kde sme odovzdali jedinečné hodnoty lokátora, ako napríklad „e-mail“ a „heslo“, ktoré tieto prvky identifikujú.
Nakoniec posielame kľúče pomocou element.sendKeys, kde je kľúčom cell.getStringCellValue (). Týmto sa vráti hodnota uložená v bunke číslo 1 a 2.
@Test public void ReadData() throws IOException { // Import excel sheet from a webdriver directory which is inside c drive. //DataSource is the name of the excel File src=new File('C:\webdriver\DataSource.xls'); //This step is for loading the file. We have used FileInputStream as //we are reading the excel. In case you want to write into the file, //you need to use FileOutputStream. The path of the file is passed as an argument to FileInputStream FileInputStream finput = new FileInputStream(src); //This step is to load the workbook of the excel which is done by global HSSFWorkbook in which we have //passed finput as an argument. workbook = new HSSFWorkbook(finput); //This step is to load the sheet in which data is stored. sheet= workbook.getSheetAt(0); for(int i=1; i<=sheet.getLastRowNum(); i++) { // Import data for Email. cell = sheet.getRow(i).getCell(1); cell.setCellType(Cell.CELL_TYPE_STRING); driver.findElement(By.id('email')).sendKeys(cell.getStringCellValue()); // Import data for the password. cell = sheet.getRow(i).getCell(2); cell.setCellType(Cell.CELL_TYPE_STRING); driver.findElement(By.id('password')).sendKeys(cell.getStringCellValue()); } }
Záver
V tomto článku sme diskutovali o všetkých dôležitých základných programoch Java Interview s príkladmi kódu, ktoré sú požadované v akýchkoľvek rozhovoroch o programovaní Java.
Naučili sme sa všetky triky v jazyku Java, ako je základná manipulácia s reťazcami, celými číslami a znakmi, selénové kódy, čítanie údajov zo súboru, matematická séria prostredníctvom kódov, a teraz máte dostatočnú predstavu o tom, ako postupovať pri akomkoľvek rozhovore v jazyku Java.
Prečítajte si tiež => Java OOP Interview Otázky a odpovede
Veľa štastia :)
Odporúčané čítanie
- OOP Java: Úvod do objektovo orientovaného programovania v Jave
- Nasadenie Java: Vytvorenie a vykonanie súboru Java JAR
- 20 otázok týkajúcich sa selektívnych rozhovorov o zabezpečení, ktoré majú vyčistiť rozhovor v roku 2021
- Virtuálny stroj Java: Ako JVM pomáha pri spúšťaní aplikácií Java
- Top 20+ .NET Interview otázok a odpovedí
- Top 40 C Programming Interview Otázky a odpovede
- Najlepšie 30+ otázky týkajúce sa rozhovorov s JMS (Java Message Service)