Sort ArrayList By Object Field WITHOUT Using CompareTo Methods?

Mar 9, 2014

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).

Here is the relevant code:

SongCollection Class
Java Code: import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.*;

[code]....

View Replies


ADVERTISEMENT

How To Sort Names Using Compareto

Feb 24, 2014

i have this problem with my code. it need to put three names in alphabetical order that are entered from the user. then output the alphabetical result. the program compiles but when you put in different names there are not alphabeticals. i think only the first if works good.

import javax.swing.JOptionPane;
public class Sort
{
public static void main(String[] args)
{
String name1;
String name2;
String name3;
 
[code]...

View Replies View Related

Accessing Object Methods Within Arraylist

Oct 14, 2014

Scanner in = new Scanner(System.in);
ArrayList<rand> selectedRand = new ArrayList<Rand>();
selectedRand.add(new Rand(in.nextLine()));

I have created the most minimal code for creating an array list. I was wondering what the basic syntax of accessing objects methods that are within an Array List. So if I was to trying and get a method such as [.returnValue,] how would this look within a Rand object that is declared in a Array List Since you cannot simply declare a new Rand object and say:

newRandObject.returnValue();

And you must go through the actual slotted portion of the array list. I have searched the web and my text book for an example however none are provided.

View Replies View Related

Accessing Arraylist Member Object Methods In Enhanced For Loop?

Feb 24, 2014

I've tried a couple ways to do it, and they don't work. I'm aiming for functionality like I got with the regular for loop, but from an enhanced for loop. Is this simply beyond the scope of an enhanced for loop, or am I just not getting the right syntax?

TestObject to1 = new TestObject("first", 11);
TestObject to2 = new TestObject("second", 12);
TestObject to3 = new TestObject("third", 13);
TestObject to4 = new TestObject("fourth", 14);
TestObject to5 = new TestObject();
List<TestObject> testList;
testList = new ArrayList<TestObject>();

[code]....

The TestObject class is simply an int and a String, with getters getInt and getString. It all works fine with the regular for loop.

edit: I should probably mention that I know what I have in the enhanced for loop now will only display the class name and the hash. I've tried adding the .getString and .getInt, and tried a few other ways to make it work. I just reverted to this because it compiles and runs

View Replies View Related

Sort String List Alphabetically With CompareTo Method / If Else Statements - Logic Errors

Oct 6, 2014

I'm having trouble with sorting Strings- 3 strings inputted by user, and I would like to output them in alphabetical order. I've used the str.compareToIgnoreCase method, and then I've tried to loop them through a series of if/ else statements. Everything I've been able to find online (including the forums here) has suggested to use the Comparator class, or to put the strings into an array, and sort list- I really would like to stick with just the String class, and its methods .

The program itself works and compiles, but I am getting logic errors that I have been unable to solve. I'm using IntelliJ Idea, and I've ran it through the built in debugger, about 100+ times (not exaggerating, lol) just to see what it's doing in particular scenarios. For instance, I can get c, a, b, to print out as a,b,c correctly, but a,b,c, will print out as b,a,c.

For me this is kind of like a Sudoku puzzle, or a Rubik's cube! Each time I fix one scenario, it breaks another one, so I don't know if there's a(logic) solution to fix all possible scenarios (abc, acb, bac etc... to all print abc) or if possibly I just need more if statements. I've only pasted in the area where I'm having problems (the if statements). I'm a big fan of the "Next Line" syntax.

(Note: please assume the non relevant content- import Scanner class, main method, etc... I didn't want to paste the entire program.)

System.out.println("Enter the first statement: ");
//input.nextLine();
string1 = input.nextLine();
System.out.println("Enter the second statement: ");
string2 = input.nextLine();
System.out.println("Enter the third statement: ");
string3 = input.nextLine();

[Code] ....

View Replies View Related

Populating ArrayList Object With Nested ArrayList Object

Jul 8, 2014

I have stumbled onto a problem with ArrayLists (not sure if nested ArrayList objects would be a more accurate description) ....

As simply put as I can describe it, I have an Inventory class which creates an ArrayList of a Product superclass, which has two subclasses, PerishableProduct and ItemisedProduct.

By default, the program is meant to have a starting inventory, which is why I have added them in the constructor

public class Inventory {
private List<Product> products;
public Inventory() {
addProduct(new Product("Frying pan", 15, 20));
addProduct(new PerishableProduct("Apple", 5.8, 30, 7));
addProduct(new ItemisedProduct("Cereal", 5.8, 0));
// this is where I am having problems. Wanting to add
// objects to the ItemisedProduct's ArrayList for cereal.
}

Within the ItemisedProduct subclass is yet another ArrayList which is meant to hold serial numbers.

public class ItemisedProduct extends Product {
private ArrayList<String> serialNumbers = new ArrayList();
public ItemisedProduct(String name, double price, int qty) {
super(name, price, qty)

[Code] .....

My problem is that I do not know how to populate the serialNumbers ArrayList from the Inventory class' constructor. Because technically, quantity is defined by how many serial numbers are created.

View Replies View Related

Methods Cannot Be Resolved To A Variable Or Is Not A Field

Feb 7, 2015

I've been using Eclipse and I realized that it compiles stuff into class files for you. So, I created a new project and each class is a separate .java file, with the .class files already there, but I cannot get rid of these errors. Or, say if I wrote them all into one file and then realized it needs to be 3 separate, or that all need to be in the same src file (oops)? Here are the errors:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:
random cannot be resolved or is not a field
guessp1 cannot be resolved to a variable
guessp1 cannot be resolved to a variable
guessp2 cannot be resolved to a variable
guessp2 cannot be resolved to a variable
guessp3 cannot be resolved to a variable
guessp3 cannot be resolved to a variable
guessp1 cannot be resolved to a variable
guessp2 cannot be resolved to a variable
guessp3 cannot be resolved to a variable

[code]....

View Replies View Related

Sorting ArrayList Of A Class According To A Field

Oct 13, 2014

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.

View Replies View Related

How To Sort ArrayList

Jun 30, 2014

How can i sort my ArrayList, which contains cars, with year and used year, i want to sort them first from year, and then from used year . what should i use?

View Replies View Related

Insertion Sort Using ArrayList

Sep 27, 2014

Im trying to do an insertion sort using ArrayLists and I keep getting this error after the sorting section where it doesnt sort anything at all, but still displays my previous array list.:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 7, Size: 7
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at Utilities.insertionSort(Utilities.java:102)
at Utilities.main(Utilities.java:66)

My code:

import java.util.*;
import java.lang.*;
public class Utilities {
public static void main(String[] args) {
ArrayList<String> equipment = new ArrayList<String>();

[Code] ......

View Replies View Related

Sort Methods And Counting The Work

Sep 18, 2014

Max has a row of N boxes (1 <= N <= 1,000). Each box weighs some value W (1 <= W <= 10,000), which will be unique among all boxes. Max would like to sort his boxes from lightest to heaviest, and must decide between Insertion Sort and Selection Sort to do so. Moving a box any distance D requires (W * D) units of work. Max determine which of the two sorting methods will require the least work.

Both of the sort methods work and counting the work in the sequential sort works fine. For some reason that I can't figure out, I am not counting the insertion sort right.

import java.util.Arrays;
public class LeastWork {
import java.util.Arrays;
public class LeastWork {
public int leastWork(int[] boxes) {
int low;
int temp;
int sWork = 0;

[Code] .....

View Replies View Related

How To Do Selection Sort Of ArrayList By Customer Last Name

Nov 8, 2014

I have an arrayList with these values:

Mike Smith with a customer id of 100 has an account number of 1000 and a balance of $5,000.00
Hank Jones with a customer id of 101 has an account number of 1001 and a balance of $45,000.00
Sam Overstreet with a customer id of 102 has an account number of 1002 and a balance of $45,000.00
Hank Jones with a customer id of 101 has an account number of 1003 and a balance of $48,000.00
and so on .....

I am trying to do a selection sort by the account holders last name. I understand how to do if the Arraylist holds integers, but my arraylist holds multiple fields. I am not allowed to use collections as this is a homework assignment.

here is the Account Class

public class Account implements Comparable<Account> {
private int acctNum;
private double balance;
private Customer cust; // note we are putting a Customer object in the Account clas
private static int nextAcct = 1000;// used to keep track of the next available account number

[Code] ....

View Replies View Related

Accessing Private Field Of Derived Object In Base Class?

Apr 1, 2013

I have this piece of code I wrote a while ago to test something. The issue is accessing a private field of Base class in Base but of a Derived object.

Here is the code:
class Base
{
private int x;
public int getX()

[Code]....

The commented code does not work but casting d to Base does.

Forgot to mention that the compilation error is that x has private access in Base.

View Replies View Related

Quick Sort Method For ArrayList Of Strings - Compiler Error

Sep 14, 2014

So I'm trying to implement a quick sort method for an ArrayList of Strings and right now I'm getting the compiler error message: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space. I don't know what that error means nor how to fix it. I've marked in my code where the error seems to be occurring.

import java.util.ArrayList;
public class quickSort
{
// constructor
public quickSort()

[code]....

View Replies View Related

Methods For Partitioning Elements Of ArrayList

Feb 18, 2014

I'm new to object oriented programming, my previous experiences have been in C. I was given an assignment to implement an operation to transform a list of data by creating a partitioning algoritm.

import java.util.*;
public class Partition {
public static void partitionWithSetGet ( List<String> theCollectionOfData ) {
int i, j;
while(i <= j){
int Result = theCollectionOfData.get(i).compareTo(pivot);
int Result = theCollectionOfData.get(j).compareTo(pivot);

[code]....

I want to grasp the this concept in greater detail, then I can use the Java API to figure out the syntax!

View Replies View Related

Creating / Using Object Class To Create Another Field In Another Class?

Jun 10, 2014

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);

[code]....

View Replies View Related

Adding Sort And Total Inventory Methods In Inventory Class

Apr 30, 2014

for my assignment I am to only add the sort and total inventory methods in the inventory class. And not create an array in the inventory class at all. My inventory class should contain all the variables needed to use with the two new methods: sort and calculate total inventory.By not creating any array in the inventory class and not touching the variables at all.

What I have came up with is:

public class inventory
{
private int prodNumber; // product number
private String prodName; // product name
private int unitsTotal; // total units in stock
private double unitPrice; // price per unit
private double totalInventory; // amount of total inventory
// initialize four-argument constructor

[Code] ....

The error message I get is:

F:Java Programminginventory.java:62: error: cannot find symbol
return prodName.compareTo ( s. getprodName() );
^
symbol: method getprodName()
location: variable s of type inventory
1 error

View Replies View Related

How To Add In Arraylist Of Object

Apr 7, 2015

I'm creating a card game assignment... so i have an arraylist called cards that has 20 cards and every card has contains 2 objects, suit and the point Value.

I shuffled the deck, now i want to add half of it to player 1 and the rest of the cards goes to the bot or computer.

how can i add the cards to the player one arraylist and have all the information of the cards?

here is my Deck class code :-

public class Deck {
private ArrayList cards;
private int size;
private ArrayList player1;
private ArrayList bot;

[code]....

the problem i have is this one doesn't work

size = cards.size() / 2;
for (int i = 0; i < size - 1; i++) {
player1.add(cards.get(i));
}
for (int s = size; s < cards.size() - 1; s++) {
bot.add(cards.get(s));
}

View Replies View Related

Methods In Object Class

Jan 16, 2014

We know that all classes in Java extend the Object class. But methods in Object class are declared as public.I think if they were declared as protected, then also there wont have been any issue. So, what is the reason behind making them as public?

View Replies View Related

Get And Set Methods For Instantiated Object?

Oct 17, 2014

I am being told to (assignment) create a new Bread Object in another class than the original. But after that it is asking for get and set methods. Get and set methods of what? It's parameters?

class Bread
{
private static String breadType; //private field to hold bread type
private static int numberOfCaloriesPerSlice; //private field to hold calories per slice

public static String getBreadType() //get method
{
return breadType;

[code]....

View Replies View Related

Editing ArrayList Object

Jan 30, 2015

So I'm Half way done with this assignment and all I need to is edit and sort my directory. What I've been trying to do as of now is edit my directory. I've tried to use the set function in the Array List, Iterator List etc but I just don't know how implement them mainly because I keep thinking "how can check which variable in the directory the user wants to change(Name, cost etc etc)?".

Main class

Java Code:

package plantnursery;
import java.util.Scanner;
import java.util.ArrayList;
public class PlantNursery {
private ArrayList<Plant> plantDirectory = new ArrayList<>();
private static Scanner read = new Scanner(System.in);

[Code] .....

View Replies View Related

Print Contents Of Arraylist In Object

Nov 7, 2014

i have a class that creates an object made of 2 strings and an arraylist

class Users{
private String ip;
private String userName;
private ArrayList <String>cons=new ArrayList();
Users(String i_p,String un,ArrayList con){//construc

[Code] .....

This object then gets returned to an arraylist of these objects

static ArrayList<Users>users=new ArrayList();

My question is how can i then get the arraylist from this object to print its contents?

View Replies View Related

Finding Object Containing Given Property In ArrayList?

Oct 12, 2014

I have got the code listed below:

class Address {
String name;
String street;
String city;
String state;
String code;
  Address (String n,String s, String c, String st, String cd){

[code]....

Using JDK7 is there a way to get an object that has got a specific property from the collection? For instance, I might want to seek if there is an Address containg "Tim Carlton" in the ArrayList.

View Replies View Related

Searching ArrayList By Object Variable?

Oct 7, 2014

I'm almost finished my Bank Account exercise and I found myself stuck at the last part. Its asking me to add a method that asks the user to input the name of the account into which they want to deposit money, then search the ArrayList for that account. If it is found, the user is asked how much money they wish to deposit.

I already have my deposit method sorted so basically what I need is just searching through the ArrayList by the name variable. I assume its don't by iterating through with some form of for loop.Heres what I have:

import java.util.Scanner;
public class BankAccount {
private double balance;
private String name;
public BankAccount(double balance, String name){
this.balance = balance;

[Code]......

And the driver class

import java.util.ArrayList;
import java.util.Scanner;
public class BankDriver {
Scanner scan = new Scanner(System.in);
ArrayList<BankAccount> list;
public BankDriver(){

[Code]...

View Replies View Related

How To Check If ArrayList Of Object Contains A Certain String

Mar 25, 2015

I have a number of objects stored in an ArrayList called inventory. Let's say I have two objects inside.

inventory.add(new Lamborghini(2011, "aventador", 411.3, false));
inventory.add(new Lamborghini(2012, "sesto elemento", 512.3, true));

I am making a function to search through the whole inventory to see if any of the Lamborghini object has a certain model name such as aventador, diablo, etc....

This is what I have but I figured there's a big mistake when I make it true / false; it's making it going through the list and what's return is the last one instead of saying there's such match in the whole list or not.

public boolean hasCarModel(String modelName){
boolean exist = false;
for (Lamborghini lambo : inventory){
String carModelName = lambo.getModelName();
if(carModelName.equalsIgnoreCase(modelName)){

[Code] ....

I figured if I add break; under exist = true; it'll work because as soon as it found one match then it'll turn to true and break out the loop but I don't think this is the best way to do it right?

View Replies View Related

Copy ArrayList Object Into Array

May 29, 2014

package com.practice;
public class Car {
private String name; //name of the car
private String modelName; //Name of the model
private int year; //The year car was made in
private int speed=0;

[Code] ...

It wont let me copy it into a array is there any solution to this.

View Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved