top 20 java interview programs
У цьому підручнику ми навели великий перелік основних програм інтерв’ю Java із фактичними прикладами логічного коду, заданими в Інтерв’ю програмування та кодування для свіжих та досвідчених кандидатів.
Важливі та основні програми Java, які зазвичай задаються в технічному раунді інтерв’ю Java та Automation.
Зараз інтерв’юери стали загальною практикою запитувати основні програми Java під час інтерв’ю, а не просто зосереджуватися на теоретичних аспектах.
Для цього ми придумали перелік декількох дуже важливих програм Java разом із належним поясненням кожної програми.
Більше того, ми також включили відповідні результати, які дадуть вам чітке уявлення про те, як ця програма працювала. Потік програми та концепції належним чином пояснюються у цій статті, де це можливо.
Найпопулярніші запитання щодо інтерв’ю щодо програмування на Java
Нижче пояснюється список найбільш популярних питань та відповідей на інтерв’ю для програмування Java, які допоможуть вам успішно очистити будь-яке інтерв’ю з автоматизації.
Рекомендуємо прочитати => Ми розглянули Основні запитання щодо інтерв’ю Java у попередніх статтях тут.
Q # 1) Напишіть програму Java для звороту рядка без використання вбудованої функції String.
Відповідь: Тут ми ініціалізуємо рядкову змінну str та використовуємо клас конструктора рядків.
Об'єкт класу конструктора рядків str2 буде надалі використовуватися для додавання значення, що зберігається у рядковій змінній str.
Після цього ми використовуємо вбудовану функцію конструктора рядків (reverse ()) і зберігаємо новий зворотний рядок у str2. Нарешті, ми друкуємо str2.
Наступний програмний код пояснює це:
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); } }
Вихід:
noitamotuA
Q # 2) Напишіть програму Java для звороту рядка, не використовуючи вбудовану функцію String reverse ().
Відповідь: Є кілька способів, за допомогою яких ви можете змінити рядок, якщо вам дозволено використовувати інші вбудовані функції рядка.
Спосіб 1:
У цьому методі ми ініціалізуємо змінну рядка, яка називається str, зі значенням заданого рядка. Потім ми перетворюємо цей рядок у масив символів за допомогою функції toCharArray (). Після цього ми використовуємо цикл for для ітерації між кожним символом у зворотному порядку та друку кожного символу.
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)); } } }
Вихід:
запасний запас
Спосіб 2:
Це ще один метод, при якому ви оголошуєте свою рядкову змінну str, а потім за допомогою класу Scanner оголошуєте об’єкт із заздалегідь визначеним стандартним об’єктом введення.
Ця програма прийме значення рядка через командний рядок (при виконанні).
Ми використовували nextLine (), який буде зчитувати введення з пробілами між словами рядка. Після цього ми використали метод split (), щоб розділити рядок на його підрядки (тут не вказано роздільник). Нарешті, ми надрукували рядок у зворотному порядку, використовуючи цикл 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) + ''); } } }
Вихід:
Введіть ваш рядок
Допомога при тестуванні програмного забезпечення
plehgnitseterawtfoS
Спосіб 3:
Це майже як метод 2, але тут ми не використовували метод split (). Ми використовували клас сканера та nextLine () для читання вхідного рядка. Потім ми оголосили цілу довжину, яка має довжину вхідного рядка.
Після цього ми надрукували рядок у зворотному порядку, використовуючи цикл for. Однак ми використовували метод charAt (index), який повертає символ за будь-яким конкретним індексом. Після кожної ітерації символ буде об'єднаний, щоб змінити рядкову змінну.
Нарешті, ми надрукували змінну зворотного рядка.
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); } }
Вихід:
Введіть рядок, який потрібно змінити
тестування автоматизації
gnitset noitamotua
Q # 3) Напишіть програму Java для обміну двома числами, використовуючи третю змінну.
Відповідь: У цьому прикладі ми використали клас Scanner, щоб оголосити об’єкт із заздалегідь визначеним стандартним об’єктом введення. Ця програма прийматиме значення x та y через командний рядок (при виконанні).
Ми використовували nextInt (), який буде вводити значення цілочисельної змінної ‘x’ та ‘y’ від користувача. Також оголошено змінну temp.
Тепер логіка програми виглядає так: ми призначаємо temp або третю змінну зі значенням x, а потім присвоюємо x зі значенням y і знову присвоюємо y зі значенням temp. Отже, після першої повної ітерації, temp матиме значення x, x матиме значення y, а y матиме значення temp (яке дорівнює 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); } }
Вихід:
Введіть x та y
Чотири. П’ять
98
Перед заміною 4598
Після обміну9845
Q # 4) Напишіть програму Java для обміну двома числами без використання третьої змінної.
Відповідь: Відпочинок все буде таким же, як у вищевказаної програми. Зміниться лише логіка. Тут ми присвоюємо x значенню x + y, що означає, що x матиме суму як x, так і y.
Потім ми присвоюємо значення y зі значенням x - y, що означає, що віднімаємо значення y із суми (x + y). До цього часу x все ще має суму x і y. Але y має значення x.
Нарешті, на третьому кроці ми присвоюємо x значенню x - y, що означає, що віднімаємо y (яке має значення x) із загальної суми (x + y). Це присвоїть x значенням y і навпаки.
різниця між контролем та забезпеченням якості
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); } }
Вихід:
Введіть x та y
Чотири. П’ять
98
Перед заміною
х = 45
y = 98
Після обміну без третьої змінної
x = 98
y = 45
Q # 5) Напишіть програму Java для підрахунку кількості слів у рядку за допомогою HashMap.
Відповідь: Це програма колекційного класу, де ми використовували HashMap для зберігання рядка.
Перш за все, ми оголосили нашу рядкову змінну, яка називається str. Тоді ми використали функцію split (), розділену одинарним пробілом, щоб ми могли розділити кілька слів у рядку.
Після цього ми оголосили HashMap і повторили використання циклу for. Усередині циклу for ми маємо оператор if-else, де, де б у певній позиції карта не містила ключ, ми встановлюємо лічильник у цій позиції та додаємо об’єкт на карту.
Кожного разу лічильник збільшується на 1. В іншому випадку лічильник встановлюється на 1.
Нарешті, ми друкуємо HashMap.
Примітка: Цю саму програму можна використовувати для підрахунку кількості символів у рядку. Все, що вам потрібно зробити, це видалити один пробіл (видалити пробіл, розділений методом розділення) у рядку () 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 Вихід:
{Saket = 2, by = 1, this = 1, This = 1, is = 2, done = 1}
Q # 6) Напишіть програму Java для ітерації HashMap, використовуючи While, і перейдіть за циклом for.
Відповідь: Тут ми вставили три елементи в HashMap за допомогою функції put ().
Розмір карти можна отримати за допомогою методу size (). Після цього ми використовували цикл While для ітерації по карті, яка містить одну пару ключ-значення для кожного елемента. Ключі та значення можна отримати за допомогою getKey () та getValue ().
Подібним чином ми використовували розширений цикл for, де маємо об’єкт “me2” для 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()); } } }
Вихід:
3
У той час як петля:
Ключ 2 Значення - Saket
Ключ - 25 Значення - Саурав
Ключ - 12 Значення - HashMap
Для петлі:
Ключ: 2 Значення: Сакет
Ключ: 25 Значення: Saurav
Ключ: 12 Значення: HashMap
Q # 7) Напишіть програму Java, щоб визначити, чи є число простим чи ні.
Відповідь: Тут ми оголосили два цілих числа temp і num і використали клас Scanner з nextInt (оскільки ми маємо лише цілі числа).
Для однієї булевої змінної isPrime встановлено значення true. Після цього ми використовували для циклу, починаючи з 2, вводиться менше половини числа і збільшується на 1 для кожної ітерації. Temp буде мати залишок за кожну ітерацію. Якщо залишок 0, тоді isPrime буде встановлено на False.
На основі значення isPrime ми приходимо до висновку, чи є наше число простим чи ні.
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'); } }
Вихід:
445
445number не є простим числом
Q # 8) Напишіть програму Java, щоб визначити, чи є рядок чи число паліндромним чи ні.
Відповідь: Ви можете використовувати будь-яку з описаних вище програм зворотних рядків, щоб перевірити, чи є число чи рядок паліндромним чи ні.
Що вам потрібно зробити, це включити одне твердження if-else. Якщо початковий рядок дорівнює зворотному рядку, тоді число є паліндромом, інакше ні.
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'); } }
Вихід:
Для струнних
Введіть номер або рядок
віджай
зворотне: yajiv
Номер не паліндром
Для числа-
Введіть номер або рядок
99
реверс: 99
Номер - паліндром
Q # 9) Напишіть програму Java для серії Фібоначчі.
Відповідь: Ряд Фібоначчі - це ряд чисел, де після початкових двох чисел кожне число, що трапляється, є сумою двох попередніх чисел.
Наприклад 0,1,1,2,3,5,8,13,21 ………
У цій програмі ми знову використали клас Scanner з nextInt (обговорено вище). Спочатку ми вводимо (через командний рядок) кількість разів, які Фібоначчі повинен виконувати ітерацію. Ми оголосили ціле число числом та ініціалізували a, b нулем та c одним. Потім ми використали цикл for для ітерації.
Логіка виглядає так, як a встановлюється зі значенням b, яке дорівнює 0, тоді b встановлюється зі значенням c, яке дорівнює 1. Тоді, c встановлюється із сумою як a, так і 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 Вихід:
Введіть кількість разів
10
Серія Фібоначчі числа:
0
1
1
два
3
5
8
13
двадцять один
3. 4
Q # 10) Напишіть програму Java для ітерації ArrayList, використовуючи for-loop, while-loop і forward for-loop.
Відповідь: У цю програму ми вставили три елементи та надрукували розмір ArrayList.
Потім ми використали While Loop з ітератором. Всякий раз, коли ітератор має (наступний) елемент, він відображатиме цей елемент, поки ми не дійдемо до кінця списку. Тож буде повторюватися тричі.
Так само ми зробили для Advanced For Loop, де створили об'єкт з назвою obj для списку ArrayList, що називається. Потім надрукували об’єкт.
Після цього ми поставили умову For Loop, де для ітератора i встановлено індекс 0, потім він збільшується на 1, доки не буде досягнуто обмеження або розмір ArrayList. Нарешті, ми надрукували кожен елемент, використовуючи метод get (index) для кожної ітерації 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 Вихід:
3
У той час як петля:
двадцять
30
40
Додатково для циклу:
двадцять
30
40
Для петлі:
двадцять
30
40
Q # 11) Напишіть програму Java, щоб продемонструвати явну перевірку умов очікування.
Відповідь: Існує два основних типи очікування - неявний та явний. (Ми не розглядаємо вільне очікування в цій програмі)
Неявне очікування - це те очікування, яке виконується незалежно від будь-яких умов. У наведеній нижче програмі ви можете бачити, що вона призначена для Google Chrome, і ми використали деякі вбудовані методи для встановлення властивості, розгортання вікна, навігації за URL-адресою та пошуку веб-елементів.
WebDriverWait wait = new WebDriverWait(driver, 20); WebElement element2 = wait.until(ExpectedConditions.visibilityOfElementLocated(By.partialLinkText('Software testing - Wikipedia'))); element2.click();
У наведеному вище фрагменті коду ви бачите, що ми створили об'єкт, який чекає WebDriverWait, а потім ми шукали WebElement, який називається element2.
Умова встановлена таким чином, що веб-драйверу доведеться почекати, поки ми не побачимо посилання «Тестування програмного забезпечення - Вікіпедія» на веб-сторінці. Він не буде виконаний, якщо не знайде цього посилання. Якщо це станеться, тоді він натисне мишу на це посилання.
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(); }}
Q # 12) Напишіть програму Java для демонстрації прокрутки вгору / прокрутки вниз.
Відповідь: Всі рядки кодів легко пов’язані, як ми вже обговорювали в нашому попередньому прикладі.
Однак у цю програму ми включили наш JavascriptExecutor js, який буде виконувати прокрутку. Якщо ви бачите останній рядок коду, ми передали window.scrollBy (arg1, arg2).
Якщо ви хочете прокрутити вгору, передайте якесь значення в arg1, якщо хочете прокрутити вниз, тоді передайте якесь значення в 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)'); } }
Q # 13) Напишіть програму Java, щоб відкрити всі посилання gmail.com.
Відповідь: Це типовий приклад розширеного циклу for, який ми бачили в наших попередніх програмах.
Після того, як ви відкрили такий веб-сайт, як Gmail, за допомогою get () або navigate (). To (), ви можете використовувати локатор tagName, щоб знайти назву тегу веб-сайту, який поверне всі теги.
Ми вдосконалили цикл for, де створили нове посилання WebElement2 для посилання (яке вже розмістило всі теги), потім отримали всі посилання через getAttribute (“href”) і отримали всі тексти через 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()); } } }
Вихід:
Запуск ChromeDriver 2.38.551601 (edb21f07fc70e9027c746edd3201443e011a61ed) через порт 16163
Дозволено лише локальне підключення.
4
https://support.google.com/chrome/answer/6130773?hl=uk-GB
Вчи більше
https://support.google.com/accounts?hl=uk-GB
Допомога
https://accounts.google.com/TOS?loc=IN&hl=uk-GB&privacy=true
Конфіденційність
https://accounts.google.com/TOS?loc=IN&hl=uk-GB
Умови
Q # 14) Напишіть код селену, щоб перейти на попередню вкладку.
Відповідь: Ми продемонстрували використання класу Robot. Ми розглядаємо це як важливу третю сторону, оскільки ми можемо досягти різної навігації в браузері та на його вкладках, якщо ви знаєте комбінаційні клавіші.
Наприклад , якщо у вашому хромі відкрито три вкладки, і ви хочете перейти на середню вкладку, вам потрібно натиснути control + 2 з клавіатури. Те саме можна досягти і за допомогою коду.
Дотримуйтесь наступного коду (відразу після того, як ми побачимо екземпляр класу Robot). ми використовували об’єкт класу Robot, який називається роботом, із двома вбудованими методами keyPress (KeyEvenet.VK_ *) та 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 } }
Q # 15) Напишіть програму Java, щоб знайти повторювані символи в рядку.
Відповідь: У цій програмі ми створили рядкову змінну str та ініціалізували ціле число з нулем.
Потім ми створили масив символів для перетворення нашої рядкової змінної в символ. За допомогою циклу for ми виконуємо порівняння між різними символами за різними індексами.
Якщо два символи послідовного індексу збігаються, він надрукує цей символ, і лічильник буде збільшено на 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 Вихід:
Повторювані символи:
до
т
Q # 16) Напишіть програму Java, щоб знайти друге за величиною число в масиві.
Відповідь: У цій програмі ми ініціалізували масив з 10 випадковими елементами, з яких ми збираємося знайти друге за величиною число. Тут ми маємо два цілих числа - найбільше та друге за величиною. Обидва встановлюють перший індекс елемента. Потім ми надрукували всі елементи, використовуючи цикл for.
Тепер логіка полягає в тому, що елемент з 0-м індексом перевищує найбільший, тоді присвоює arr (0) найбільшому, а secondLargest - найбільшому. Знову ж таки, якщо елемент з 0-м індексом більше, ніж secondLargest, тоді присвойте secondLargest arr (0).
Це буде повторюватися для кожної ітерації, і в кінцевому підсумку після порівняння або завершення ітерацій до довжини масиву ви отримаєте елемент secondLargest.
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); } }
Вихід:
Даний масив:
100 14 46 47 94 94 52 86 36 94 89
Друге за величиною число: 94
Найбільше число: 100
Q # 17) Напишіть програму Java, щоб перевірити номер Армстронга.
Відповідь: Перш за все нам потрібно зрозуміти, що таке число Армстронга. Число Армстронга - це число, яке є сумою кубів усіх його одиниць, десятків і сотень цифр для трицифрових чисел.
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 = 1 + 125 + 27 = 153
Якщо у вас є чотиризначне число, скажімо
1634 = 1 * 1 * 1 * 1 + 6 * 6 * 6 * 6 + 3 * 3 * 3 * 3 + 4 * 4 * 4 * 4 = 1 + 1296 + 81 + 256 = 1634
Тепер у цій програмі ми маємо оголошені temp та цілі числа. Ми ініціалізували c зі значенням 0. Потім нам потрібно призначити ціле значення, яке ми збираємось перевірити на Армстронга (у нашому випадку, скажімо 153). Потім ми призначили нашій змінній temp те число, яке ми збираємось перевірити.
Після цього ми використовували під час умовної перевірки, де залишок присвоюється a, а число ділиться на 10 і присвоюється n. Тепер наша змінна c, для якої спочатку було встановлено нуль, присвоюється c + (a * a * a). Припустимо, ми повинні обчислити чотиризначне число, тоді c слід призначити c + (a * a * a * a).
Нарешті, ми поставили оператор if-else для умовної перевірки, де порівняли значення, що міститься в c, з temp (яке має фактичне число, що зберігається на даний момент). Якщо воно збігається, то число - Армстронг, інакше ні.
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'); } }
Вихід:
число армстронга
Q # 18) Напишіть програму Java для видалення всіх пробілів із рядка за допомогою replace ().
Відповідь: Це проста програма, де ми маємо нашу рядкову змінну str1.
Інша рядкова змінна str2 ініціалізується параметром replaceAll, який є вбудованим методом для видалення n кількості пробілів. Зрештою, ми надрукували str2, який не має пробілів.
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); } } }
Вихід:
SaketSauravisaQualityAnalist
Q # 19) Напишіть програму Java для видалення всіх пробілів із рядка без використання replace ().
Відповідь: Це ще один підхід до видалення всіх пробілів. Знову ж таки, ми маємо одну рядкову змінну str1 з деяким значенням. Потім ми перетворили цей рядок на масив символів за допомогою toCharArray ().
Тоді ми маємо один об’єкт StringBuffer sb, який буде використовуватися для додавання значення, що зберігається в індексі chars (i) після того, як ми включили цикл for та один if.
Якщо умова встановлена таким чином, що елемент з індексом i символьного масиву не повинен дорівнювати пробілу або табуляції. Нарешті, ми надрукували наш об’єкт 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 Вихід:
питання та відповіді співбесіди інженера
SaketSauravisanAutomationEngineer
Q # 20) Напишіть програму Java, щоб прочитати Excel.
Відповідь: Ці типи програм зазвичай використовуються в рамках Selenium. Ми додали докладні коментарі для кожного кроку, щоб зробити програму зрозумілішою.
Логіка починається після того, як ми завантажили аркуш, в якому зберігаються дані. Ми намагаємось імпортувати електронну пошту та пароль. Для цього ми отримуємо комірку за допомогою методів getRow () та getCell (). Скажімо, у нас є електронна пошта та паролі в 1-й та 2-й клітинках.
Тоді ми встановлюємо тип комірки на рядок. Після цього ми виконуємо звичайну операцію локатора веб-елементів (By.id), де передали унікальні значення локатора, такі як “електронна пошта” та “пароль”, які ідентифікують ці елементи.
Нарешті, ми надсилаємо ключі, використовуючи element.sendKeys, де ключ є cell.getStringCellValue (). Це поверне вам значення, збережене в комірках № 1 та 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()); } }
Висновок
У цій статті ми обговорили всі важливі основні програми інтерв’ю Java із прикладами коду, які задаються в будь-яких інтерв’ю програмування Java.
Ми вивчили всі трюки Java, такі як базові маніпуляції зі рядками, цілими і символами, коди селену, читання даних із файлу, математичні ряди через коди, і тепер ви маєте широке уявлення про те, як робити будь-яке інтерв'ю на Java.
Також прочитайте => Запитання та відповіді на інтерв’ю Java OOP
Щасти :)
Рекомендована література
- ООП Java: Вступ до об’єктно-орієнтованого програмування на Java
- Розгортання Java: Створення та виконання файлу JAR Java
- 20 вибіркових запитань щодо інтерв’ю з якості для очищення інтерв’ю у 2021 році
- Віртуальна машина Java: як JVM допомагає у запуску програми Java
- Топ 20+ запитань та відповідей на інтерв’ю .NET
- Найкращі 40 програмних запитань та відповідей на програмування
- 30 найкращих запитань щодо інтерв’ю JMS (Java Message Service)