Related questions
Create a Java
- int rollno
- String name
- String address
Implement two comparator classes to sort student objects by name and by rollno (roll number). Implement your own selection sort method.
*Does the program below meet the above requirements? Can the program be made anymore effecient? Is there any improvements that could be made? (modularity, organization, etc..) If so what would they be/look like? I could also use some help with comments to explain the programs functionality.*
Please and thank you!
Source code:
import java.util.ArrayList;
import java.util.Comparator;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
class Student {
int rollno;
String name;
String address;
public Student(int roll, String name, String add)
{
super();
this.rollno = roll;
this.name = name;
this.address = add;
}
@Override
public String toString()
{
return "Student [rollno=" + rollno + ", name=" + name + ", address=" + address + "]";
}
}
class Sortbyroll implements Comparator<Student> {
public int compare(Student x, Student y)
{
return x.rollno - y.rollno;
}
}
class Sortbyname implements Comparator<Student> {
public int compare(Student x, Student y)
{
return x.name.compareTo(y.name);
}
}
public class Main {
public static void sorted(ArrayList<Student> stu)
{
Sortbyroll roll = new Sortbyroll();
int n = stu.size();
for(int i = 0; i < n-1; i++)
{
int minid = i;
for (int j = i+1; j < n; j++)
if (roll.compare(stu.get(j), stu.get(minid)) < 0)
minid = j;
Student t = stu.get(minid);
stu.set(minid, stu.get(i));
stu.set(i, t);
}
}
public static void main(String[] args) {
ArrayList<Student> stu = new ArrayList<>();
String[] names = {"Allan", "Chris", "Fedrick", "Diana", "Eliza", "George", "Hannah", "Ian", "Julia", "Kevin"};
String[] addresses = {"620 pioneer st", "801 cheney dr", "504 plymouth ave", "830 washington st", "200 main st", "910 oak st", "300 maple ave", "700 ash st", "100 pine st", "500 elm st"};
for (int i = 0; i < 10; i++) {
int roll = i+1;
String name = names[i];
String address = addresses[i];
stu.add(new Student(roll, name, address));
}
sorted(stu);
// Create the GUI
JFrame frame = new JFrame("Sorted Students");
JPanel panel = new JPanel();
JTextArea textArea = new JTextArea(15, 30); // 15 rows, 30 columns
// Append the sorted student information to the text area
StringBuilder sb = new StringBuilder();
for (Student s : stu) {
sb.append(s).append("\n");
}
textArea.setText(sb.toString());
// Add the text area to the panel and the panel to the frame
panel.add(textArea);
frame.add(panel);
// Set frame properties and display it
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps with 4 images
- Interpreter.java is missing these methods in the code so make sure to add them: -print, printf: Exist, marked as variadic, call Java functions -getline and next: Exist and call SplitAndAssign -gsub, match, sub, index, length, split, substr, tolower, toupper: Exist, call Java functions, correct return Below is interpreter.java import java.util.ArrayList; import java.util.HashMap; import java.util.List; public class Interpreter { private HashMap<String, InterpreterDataType> globalVariables; private HashMap<String, FunctionDefinitionNode> functions; private class LineManager { private List<String> lines; private int currentLineIndex; public LineManager(List<String> inputLines) { this.lines = inputLines; this.currentLineIndex = 0; } public boolean splitAndAssign() { if (currentLineIndex < lines.size()) { String currentLine = lines.get(currentLineIndex);...arrow_forwardpublic static ArrayList findExactString(String s, ArrayList myArray) { return null; } // Use the above method, findExactString, as a helper method to implement addWithoutDuplication method. The addWithoutDuplication method has the following properties: 1- It takes two arguments, a string s and an ArrayList myArray of type string. 2- It returns an integer which represents the number of occurrences of the string s in myArray while attempting to add it. 3- If myArray is null, it returns -1 4- If adds the string s to the end of the ArrayList myArray if the string s is not already there. public static int addwithout Duplication(String s, ArrayList myArray) { return -1;arrow_forwardusing java programming code the followingarrow_forward
- 1 import java.util.Random; 2 3 4 5 6- 7 8 9 10 11 12 ▼ import java.util.StringJoiner; public class preLabC { public static MathVector myMethod(int[] testValues) { // Create an object of type "MathVector". // return the Math Vector Object back to the testing script. return VectorObject; 13 14 15 } } ▸ Comments Description The MathVector.java file contains a class (Math Vector). This class allows you to create objects in your program that can contain vectors (a 1D array) and perform actions on those vectors. This is useful for doing math operations like you would in your linear algebra class. Your method should evaluate against two tests. What do you need to do in this exercise? You need to create an "instance" of the MathVector object, VectorObject, in your method. If you do this correctly, your method will accept a 1D array of integers, testValues, feed it into the VectorObject and then return the VectorObject. If you look in the file MathVector.java you'll see that this is one way in...arrow_forwardDevelop a Java program that simulates a library book checkout system. The program should allow users to check out and return books, maintain a catalog of available books, and display information about overdue books. Follow these guidelines: Create a Book class with attributes like title, author, and availability status. Implement methods to check out and return books, updating the availability status accordingly. Create an array or a collection to store instances of the Book class representing the current catalog. Prompt users to input their library card number before checking out or returning a book for tracking purposes. Keep track of due dates for checked-out books. Assume a standard lending period of 14 days. Display information about overdue books, including the book details and the number of days overdue. Provide feedback messages for successful checkouts, returns, or overdue book information. Include JavaDoc comments for class and method documentation. Utilize single-line...arrow_forwardPlease help me make a game with Java. The game should have only a class and needs to include at least 3 of the following AP topics: String Array, ArrayList, 2D Array Interfaces and/or Abstract classes Polymorphism Inheritance Searching Algorithms Sorting Algorithms Recursion You also need to include a new topic that is different than the above. Once you finish creating the game, please show me the new topic that you included and let me know what are the other 3 topics that you chose from the list above and what was challenging.arrow_forward
- Please edit this class Authenticator. Remove breaks. Also create user array of size 100 rather than 3 different arrays. Also edit so it can be more OOP import java.util.Scanner; public class AuthenticatorApp { public static void main(String[] args) throws Exception { Scanner input=new Scanner(System.in); Authenticator obj=new Authenticator("user.data"); String Username,Password; boolean done=false; int count=0; while(count<3) { System.out.print("Username? "); Username=input.next(); System.out.print("Password? "); Password=input.next(); obj.authenticate(Username,Password); count++; } System.out.print("Too many failed attempts... please try again later"); input.close(); } } ------------------------------------------------------------------------------------------------------------import java.io.File; import...arrow_forwardWrite a java method that receives a reference to an array of integers and then sorts only the non-perfect numbers. if a number is perfect then it must remain in its current location in the array. Notes: 1) You are not allowed to use the Arrays.sort() method or any other ready-made sorting method. 2) You can not define new arrays. Your sorting must be in-place. 3) A number if perfect if the some of its divisors is equal to the number itself. For example the number 6 is perfect because the sum of its divisors is 1+2+3 = 6 while 8 is not perfect because the sum of its divisors is 1+2+4 = 7 which is not equal to 8.arrow_forwardPROBLEM STATEMENT: In this problem you will need to return the first elementfrom the ArrayList. import java.util.ArrayList;public class RetrieveSpecifiedElement{public static int solution(ArrayList<Integer> list){// ↓↓↓↓ your code goes here ↓↓↓↓return 0; Can you help me with this question The language is Javaarrow_forward
- Complete the searching and sorting algorithms in ModuleOne and ModuleTwo of the modules package. Test all sorting algorithms in AlgorithmsTest. You must build everything from scratch and cannot use any methods in other Java packages to make your algorithm. Restrictions : All classes/methods must be made by you. You are ONLY allowed to use java.util.Arrays.toString method You are NOT allowed to use any other the Java API Library classes/methods.arrow_forwardProvide a different implementation of ChoiceQuestion. Instead of storing the choices in an array list, the addChoice method should add the choice to the question text. For this purpose, an addLine method has been added to the Question class. Use the following files: Question.java /** A question with a text and an answer.*/public class Question{ private String text; private String answer; /** Constructs a question with empty text and empty answer. */ public Question() { text = ""; answer = ""; } /** Sets the answer for this question. @param correctResponse the answer */ public void setAnswer(String correctResponse) { answer = correctResponse; } /** Checks a given response for correctness. @param response the response to check @return true if the response was correct, false otherwise */ public boolean checkAnswer(String response) { return response.equals(answer); } /** Add a line of text to...arrow_forwardjava Create a static method that: is called repeatAll returns ArrayList of Booleans takes in a single parameter - an ArrayList of Booleans This method should modify its ArrayList parameter by repeating its ArrayList values. For example, if the parameter is (true, false, false) The modified ArrayList should be (true, false, false, true, false, false) public static void main(String[] args) { Scanner in = new Scanner(System.in); int size = in.nextInt(); ArrayList<Boolean> list = new ArrayList<>(); for(int i=0; i < size; i++) { list.add(in.nextBoolean()); } System.out.println(repeatAll(list)); } }arrow_forward
- Text book imageDatabase System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationText book imageStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONText book imageDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- Text book imageC How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONText book imageDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningText book imageProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education