we have an Arraylist<Tweet>, and this class is defined as followe: public class Tweet implements Comparable<Tweet>, Serializable. now if we implement the method comparteTo, then will it be sorted automatically? I want to sort this array by any insert.
I have a project where I must sort a collection of songs by a number of fields: year, rank, title and artist. in the project, we must use certain methods and we cannot add others without getting marked down. Here are the specific requirements:
Sorting
The -sortBy option will cause the output to be sorted by a particular field. If this option is specified, the output should be ordered according to the field named. If there are ties, the tied songs should appear in same order in which they were in the input file. If no -sortBy option is specified, the output should maintain the order of the input file.
public void sortYear()
Order the songs in this collection by year (ascending).public void sortRank() Order the songs in this collection by rank (ascending).public void sortArtist() Order the songs in this collection lexicographically by artist (ascending, case-insensitive).public void sortTitle() Order the songs in this collection lexicographically by title (ascending, case-insensitive).
The operator < is undefined for the argument type(s) java.util.ArrayList<FacebookUser>, java.util.ArrayList<FacebookUser>
For this:
class FriendsComparator implements Comparator<FacebookUser> { @Override public int compare(FacebookUser o1, FacebookUser o2) { int returnValue = 0; if (o1.friends < o2.friends) returnValue = -1; [Code] ....
Same as for the second if condition. How can I fix this exactly? What I'm doing is trying to sort Facebook users by the most to least amount of friends.
I have a case in which I want to sort two types of ArrayLists (using quicksort) and the method originally coded only accepts a String ArrayList. The problem is that now I want to sort an ArrayList of type int but couldn't . . . so I decided to overload the method. Since it looks very ugly to copy and paste the same chunk of code only to change the method signature I wondered if there is a better way to make this method more dynamic and be able to take in different types of ArrayLists.
My code:
private ArrayList<String> sort(ArrayList<String> ar, int lo, int hi){ if (lo < hi){ int splitPoint = partition(ar, lo, hi); sort(ar, lo, splitPoint); sort(ar, splitPoint +1, hi);
Design a class named Person and its two subclasses named Student and Employee. Make Faculty and Staff subclasses of Employee. There is also a MyDate class as explained below. A person has a name, address, phone number, and email address. A student has a status (freshman, sophomore, junior, or senior). Define the status as an integer which can have the value 0 (for "Freshman"),
1 (for "Sophomore"), 2 (for "Junior"), and 3 (for "Senior"),
but don't allow the status to be set to any other values. An employee has an office, salary, and dateHired. The dateHired is a MyDate field, which contains the fields: year, month, and day. The MyDate class does not explicitly inherit from any class, and it should have a no-arg constructor that sets the year, month, and day to the current year, month, and day. The MyDate class should also have a three-argument constructor that gets three int arguments for the year, month and day to set the year, month and day.
A faculty member has office hours and a rank. Define the rank as a String (for values like "Professor" or "Instructor"). A staff member has a title, which is also a String. Use data types for the fields as specified, or where one is not specified, use a data type that is appropriate for the particular field. Write a test program called TestEveryone.java that creates a Person, Student, Employee, Faculty, and Staff object, and invoke their toString() method (you don't need to call the objects' toString() method explicitly).
Note: Your MyDate.java class is the object class that your dateHired field is created from in the Employee.java class.
Do not use the Person, Employee or Faculty classes defined on pages 383 and 384 of the book. Create new ones.Here is the code I have so far concerning the employee and MyDate.
public class Employee extends Person { private String office; private double salary; //private MyDate dateHired; //7 argument constructor for employee public Employee(String name, String phoneNumber, String email, String address, String office, double salary /*MyDate dateHired*/) { super(name, phoneNumber, email, address);
I have to create a method with the following header :
public static <E extends Comparable<E> > void sort ( ArrayList<E> list , int left, int right)
i also had to create a swap cells method and position of max integer method. and also had to read the preserved data file in with a scanner. I implemented the comparable interface I am having difficulty sorting my list by the area. It has to be in descending order.
Geometric Object class: since it has comparator also am interested if i need to change this?
CODE:
Driver: public static void main(String[] args) throws IOException, ClassNotFoundException { Circle c1 = new Circle (4, "red", false); Circle c2 = new Circle (2, "blue", true); Circle c3 = new Circle (10, "blue", true); Rectangle r1 = new Rectangle (10, 6, "yellow", true); Rectangle r2 = new Rectangle ( 5, 11, "green", true); ArrayList <GeometricObject> list = new ArrayList();
I'm just putting together a little 'horse racing' program while I'm learning Java, and I have a class called Race that creates an array list of thorougbred horses called field, and asks the user to enter then names of the each horse in the field, with a maximum of 14 horses. The problem occurs with the current code that I have:
import java.util.*; public class Race { RaceHelper helper = new RaceHelper(); ArrayList<thoroughbred> field = new ArrayList<thoroughbred>(); public void setField() { //enter the horses in the race and determine the size of the field
[code]....
the statement of the index position and current size was for me, so I could see what was going on.What I don't understand is the while loop. not that the class doesn't compile and run (you can see that it does), it's the output. Why does the <= sign allow one more entry and increase the size of the field to 15?
Less than or equal to 14 should give a maximum field size of 14, right, With the starting object at index position at zero and going up to 13, for a total size of 14 thoroughbred objects if I just use while (field.size()<14) or a for loop, then the output is fine; it allows a max of 14 entries and prints the results. I thought it had something to do with the size being zero based, but that doesn't seem to matter -- unless it does matter and I'm missing it. why the comparison I'm using produces this output? a field of 14 horses shouldn't matter whether it's zero or 1 based, as long as the size of the field is 14, so why the extra entry with this while condition?
So, I have two classes (bubble sort and insert sort) which are sorting dates. I need to save their comparings and reallocation of elements.
And I don't know how to do it. The point is if I want save that dates(comparings and reallocation) to Result class i need to create new instances of class in each sorting classes so i can't later do something with that, because I have null in Main class.
To avoid that problem i have tried to make Result class as singleton.. I mean: "public static final Results INSTANCE = new Results();" and then in classes "static Results result = Results.INSTANCE" without constructor and to save for example comparings i had method:
Java Code:
int SetComparings(){ return comparings++; } mh_sh_highlight_all('java');
But it do not work too, because it overwrites old dates. Is there anyway to do not create instance of class? I don't want to copy whole code because it is too long and cant be unreadable, but i will put you structure of my program:
Java Code:
class BubbleSort{} class InsertSort{} class Results{} class Sorting{} // class with switch to choose which way of sorting use public class Main{} mh_sh_highlight_all('java');
I am trying to create a java program to sort an array in ascending and descending order. Here is the program I created :
import java.util.Arrays; import java.util.Collections; public class ArraySort { public static void main(String [] args) { int [] num = {5,9,1,65,7,8,9}; Arrays.sort(num);
[Code]...
BUT I GET THE FOLLOWING EROOR ON COMPILATION
ArraySort.java:12: error: no suitable method found for reverseOrder(int[]) Arrays.sort(num,Collections.reverseOrder(num)); ^ method Collections.<T#1>reverseOrder(Comparator<T#1>) is not applicable
I have a school assignment that involves me sorting an array of objects based on one of the class String variables. I am using as the title says a simple selection sort method. The problem I'm having is that when I run the program in debug mode, it never seems to enter the if statement in the inner loop. I would like to say I've tried a number of things to figure it out, but honestly I'm just stumped as to why it's not working.
Here is the code:
public static void sortTransactions(Transaction[] oTransaction){// This is the sorting method, obviously it's not done so it currently just prints to screen. System.out.println("Successful call to sortTransaction()"); String min = ""; int curInd = 0; Transaction[] temp = new Transaction[1];
[Code] ....
The output when I check to see if the array is sorted verifies that the array never does get sorted.
For reference I am programming Java in BlueJ. I am fairly new to the language and I am having trouble with sorting.
I am trying to call / test all of the 5 sorting methods (at the same time) in the main class. To be specific, the sorted list has to technically outputted 5 times.
I figured out how to call / test Quicksort:
Sorting.quickSort(friends, 0, friends.length-1);
But the others are not working correctly. Specifically these:
For reference, this is the output when it is not sorted:
Smith, John 610-555-7384 Barnes, Sarah215-555-3827 Riley, Mark 733-555-2969 Getz, Laura 663-555-3984 Smith, Larry464-555-3489 Phelps, Frank322-555-2284 Grant, Marsha243-555-2837
This is the output when it is sorted:
Barnes, Sarah215-555-3827 Getz, Laura 663-555-3984 Grant, Marsha243-555-2837 Phelps, Frank322-555-2284 Riley, Mark 733-555-2969 Smith, John 610-555-7384 Smith, Larry464-555-3489
This is the class Sorting, which I should note is all correct:
public class Sorting{ /** * Swaps to elements in an array. Used by various sorting algorithms. * * @param data the array in which the elements are swapped * @param index1 the index of the first element to be swapped * @param index2 the index of the second element to be swapped */ private static <T extends Comparable<? super T>> void swap(T[] data, int index1, int index2){ T temp = data[index1]; data[index1] = data[index2];
[Code]...
This is the Main class in which I am supposed to call the sorting methods, SortPhoneList:
public class SortPhoneList{ /** * Creates an array of Contact objects, sorts them, then prints * them. */ public static void main (String[] args){ Contact[] friends = new Contact[7]; friends[0] = new Contact ("John", "Smith", "610-555-7384"); friends[1] = new Contact ("Sarah", "Barnes", "215-555-3827");
What I want to do is this, this is my first class:
public class Footballer { int goals; String surname= ""; String team=""; private static int counter=0; private int dres; }
(this is just the header of the class... And this is my second class, which contains an ArrayList of the first class:
public class FootballTeam{ String teamname=""; String league=""; ArrayList<Footballer> f; }
And this is my third class which contains an ArrayList of the second class:
public class FootballLeague{ String leaguename=""; ArrayList<FootballTeam> ft; }
What I want to do is, know how many of footballers are there in the league? Meaning how many of "f"s are in the "ft"... I remember from C++ it was easy, you just did it something like this: ft.f[i]; (where i is a position), then you'd go through each of them, if you wanted to do something with them, or just ask for it's length, if you needed to know how much footballers are there.
I'm trying this method to get the size of the array in the 2nd class, from the 3rd class (containing an ArrayList of classes of 2nd class, but no luck:
int counter=0; for(int i=0;i<this.ft.size();i++) { counter+=this.ft[i].f.size(); }
I'm getting this: Array required, but ArrayList<FootballTeam> found ---
I have extracted relevant parts of code and outputs, this is the only relevant code for this problem. There is a basic class called SalonData, which contains the fields refereed to. Original data rs. is obtained from an SQL extract, that is populating correctly.
The code was inteded to populate the phone number in arraylist "loc2", but based on the code, the phone number in arraylist "salons" for Location 2 should still be blank. Question is how did the phone number for this customer in arraylist salons, for Location 2, get populated?
What I want to do is this, this is my first class:
Java Code:
public class Footballer { int goals; String surname= ""; String team=""; private static int counter=0; private int dres; } mh_sh_highlight_all('java');
(this is just the header of the class, just how it looks)...
And this is my second class, which contains an ArrayList of the first class:
Java Code:
public class FootballTeam{ String teamname=""; String league=""; ArrayList<Footballer> f; } mh_sh_highlight_all('java'); And this is my third class which contains an ArrayList of the second clas: Java Code: public class FootballLeague{ String leaguename=""; ArrayList<FootballTeam> ft; } mh_sh_highlight_all('java');
What I want to do is, know how many of footballers are there in the league? Meaning how many of "f"s are in the "ft"... I remember from C++ it was easy, you just did it something like this: ft.f[i]; (where i is a position), then you'd go through each of them, if you wanted to do something with them, or just ask for it's length, if you needed to know how much footballers are there.
import java.util.Scanner; import java.util.ArrayList; public class Problem1 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); ArrayList<String> list = new ArrayList<String>();
[Code] ....
There is an error and says that my ArrayList has private access. I can't figure out how to fix it.
The code runs but when I enter "Quit", the program just stops. The arraylist isn't printed out?
I'm trying to fill my jtable with an arraylist. The problem is the jtable is in an extended class and the arraylist in the mainGUI. Now how can I fill the jtable with the arraylist?
That's the arraylist in my MainGUI
BufferedReader in = null; ArrayList<String> data = new ArrayList<String>(); try { in = new BufferedReader(new FileReader("1.dat.txt")); String str; while ((str = in.readLine()) != null) { data.add(str);
My code runs and populates an arraylist. However my break statement, while stopping the loop ends up being added to the arraylist. And I'm not sure how to fix this error.
public static void main(String args[]) throws Exception { // declaring variables String input = ""; // creating array list ArrayList<String> nameList = new ArrayList<String>();