String Garbage Collection
Jul 22, 2014I have a method
void method(){
String s =null;
String s1 = new String();
}
In this all the two strings are eligible for garbage collection?
I have a method
void method(){
String s =null;
String s1 = new String();
}
In this all the two strings are eligible for garbage collection?
In my applications garbage collection logs, I see below line.
2013-11-26T10:35:45.050-0500: 5195.298: [GC 5195.298: [DefNew: 17430K->456K(19136K), 0.0102408 secs] 796185K->779211K(2668480K), 0.0103687 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
2013-11-26T10:36:10.593-0500: 5220.840: [GC 5220.840: [DefNew: 17480K->398K(19136K), 0.0100548 secs] 796235K->779153K(2668480K), 0.0101835 secs]
The last line seems half cut. Does that indicate that there is memory leak in my application? I have not seen the app throwing the out of memory error.
What is the usage of garbage collector in java.
View Replies View RelatedI have small project to be implemented in Java, which, expected the management of a parking.
The project has a class abstract Vehicle, whence derive three classes: Car, Motorcycle, Heavy Vehicles; the cost estimated time for the 3 types of vehicles are: 2€ for Cars, 1€ for Motorcycle and 5€ for H.V.
In addition, in class Ticket will be stored the arrival time of the customer and the characteristics of his vehicle.
Finally, in the class Parking(which provides 80 places available), here it should be added the various types of vehicles.
Now, I though of using an Collection, as Set.. So that they can not, two Vheicle with same license plate.
I am using mysql database and I have downloaded the library also I have managed to get the database connection and query working. I need to know if I need to create separate classes to add/remove/edit items and view items? Do I need to put my database connection script in every class that I create or should I create methods for both the connection and the queries that will be called in the additional classes or methods that I have?
Below is what I have written so far and it is working, I will change the database and query soon to reflect the task I need to do because I have followed a tutorial.
Java Code:
/**
* cdCollection.java
*/
package org.com.mm00422_prototype;
//Import for the SQL package
import java.sql.*;
//Registering the JDBC driver
//Class.forName("com.mysql.jdbc.Driver");
[code]....
I have a method that accepts JSONArray as parameter and returns the values of it as ArrayList Object. My question which of these ways is appropriate in populating the ArrayList object this method populates the arraylist upon creation of object (I don't know what the right term to use, but as netbeans IDE suggest, JSONArray object should be final since it was used in inner class.).
private List<String> getStringList(final JSONArray jsonArr) {
return new ArrayList<String>() {
{
try {
for (int i = 0; i < jsonArr.length(); i++) {
add(jsonArr.getString(i));
}
} catch (JSONException ex) {
ex.printStackTrace();
}
}
};
}
this second method is the usual way of populating collection
private List<String> getStringList(JSONArray jsonArr) {
List<String> strList = new ArrayList<String>();
try {
for (int i = 0; i < jsonArr.length(); i++) {
strList.add(jsonArr.getString(i));
}
} catch (JSONException ex) {
ex.printStackTrace();
}
}
What are the advantages and disadvantages between the two? like which is faster? or which consumed larger memory?
I need to create an algorithm that finds the common element(s) in all arrays that has a signature of public Comparable[] findCommonElements(Object[] collection) that has an efficiency of at most O(knlogn), uses a query array, and accepts as input a collection of arrays. I am aware my time would be better spent learning how to use array lists and hash sets, but I am supposed to use concepts already covered, and these have not been.
I feel like this code should work, but it is returning null for the array of common elements. Which means it obviously is not working correctly. I am also likely going to need implementing the sort algorithm, but I wanted to get the part of finding the common elements set first.
public class CommonElements2<T extends Comparable<T>>
{
Comparable[] tempArr;
Comparable[] common;
Comparable[] queryArray;
/*
sort algorithm goes here
*/
public Comparable[] findCommonElements(Object[] collections)
[code]....
Write a function (or functions) that given a collection of files will produce a sum of integers from each line of each file. Each file can have any number of lines from 1 to N. Each line can contain only one integer and no other alphanumeric characters. All of the numbers from all of the files should be added to the final result. The result is just one number.
View Replies View RelatedI have wrote the method delete turtle below. Which is part of turtle collection (Hashmap)
public void deleteTurtle(String name) {
Iterator iterate = turtles.keySet().iterator();
while(iterate.hasNext()) {
String key = (String)iterate.next();
if(key.equals(name)) {
iterate.remove();
} else {
setErrorMessage("notFound");
}
}
}
I need to now modify it so the method ensures that the turtles shape collection is cleared before the Turtle object is deleted.
I have Date as listed below:
17/03/2015 09:38:39 AM
17/03/2015 10:52:26 AM
10/03/2015 08:30:56 AM
02/03/2015 09:18:10 AM
02/03/2015 09:37:23 AM
02/03/2015 11:25:01 AM
02/03/2015 11:29:00 AM
02/03/2015 11:42:38 AM
02/03/2015 12:04:39 PM
02/03/2015 12:09:05 PM
02/03/2015 01:17:09 PM
02/03/2015 01:29:08 PM
I want them to sort them as per below result: (Same date one should be sort by timestamp)
17/03/2015 10:52:26 AM
17/03/2015 09:38:39 AM
10/03/2015 08:30:56 AM
02/03/2015 01:29:08 PM
02/03/2015 01:17:09 PM
02/03/2015 12:09:05 PM
02/03/2015 12:04:39 PM
02/03/2015 11:42:38 AM
02/03/2015 11:29:00 AM
02/03/2015 11:25:01 AM
02/03/2015 09:37:23 AM
02/03/2015 09:18:10 AM
I tried using Collection.sort using compareTo but result is not expected...
So I have a persons class:
public class Person
{
private String name;
private int age;
public Person (String name, int age) {
this.name = name;
this.age = age;
[Code] .....
And I need to write a simple main method that creates lots of instances of the Person class and adds them to a generic instantiation of a Collection (ArrayList). And I need to make it so I as a programmer can define how many instances to create.
I have the following
Java Code: list.stream().sorted((s, s1) -> s.getName().compareTo(s1.getName())).distinct(); mh_sh_highlight_all('java');
I want to save the results to a collection.
I saw an video tutorial on these by Oracle learning library and they mentioned an into(collection) method but I looked at the api and there isn't one.
How can I do it?
I am looking at a snippet of code in my "learning Java 4th edition" by Orielly and there is a small snipped of code which says:
Java Code: Date date = new Date();
List list = new ArrayList();
list.add( date );
..
Date firstElement = (Date)list.get(0); // Is the cast correct? Maybe. mh_sh_highlight_all('java'); so I am typing the same thing in my compiler in a small Driver class and for some reason I have an error and Im dumbfounded...
I am not able to get the arraylist object on jsp. Below is my code.
public class DisplayArticle extends SimpleTagSupport
{
String path;
List<Article> articleList=new ArrayList<Article>();
public String getPath() {
return path;
[code]....
I am having a hard time trying to wrap my head around trying to get a couple of columns in a datatable populated with values from a @OneToMany collection. The concept is simple but my brain refuses to grasp it!! I will try to make this brief...
I have several forms built with primefaces 3.5 using NetBeans 8 IDE on a JBoss EAP 6.21 server, and JPA 2.1 annotations. Data is extracted from an Oracle 11 database, which consists of several lookup tables, as well as a primary table and secondary table. Using the EntityManager createQuery method I query the database, which of course returns a resultset. The query grabs all records from the primary, as well as values from 2 specific columns of the secondary database, based on search criteria entered by the user on a primefaces search form. The returned results are then iterated through, this is where I am trying to get the values from the secondary table to populate specific fields in the datatable.Here is the applicable code from the list.xhtml form containing the datatable:
<p:dataTable id="datalist" value="#{foreignPartyController.returnedSearchResults}" var="item"
selectionMode="single" selection="#{foreignPartyController.selected}"
paginator="true"
rowKey="#{item.foreignPartyId}"
rows="30"
rowsPerPageTemplate="10,20,30,40,50"
sortOrder="ascending"
resizableColumns="true"
style="overflow: auto"
[code]....
As odd as the code may look (and I will completely understand anyone cringing as to some of the coding methods I use), specifically with the ui:repeat tags nested inside the datatable tag of the list.xhtml form, I strangely do see the values from the secondary table showing up in the form showing the results in a datatable. However, when the user clicks on a specific record in the returned resultset listed in the datatable, another form is opened and populated with the values from the datatable, but the 2 fields on that form that should be populated with the 2 values I referred to before from the secondary table (i.e. policy1Num and totalPayoutAmt) do not have the values in them.
This is partly because I have those 2 fields in the editable form pointing to the managed bean of the secondary table (code from that bean not shown here), rather than the same "polNum. policy1 Num" and "totPayout.totalPayoutAmt" var I am using in the list.xhtml form. How those values are being successfully returned into the datatable of the list.xhtml form - I happened to "stumble" across the use of the "polNum" and "totPayout" vars with the "policy Payment Collection" list. I do not know how to do the same thing for those 2 fields in the editable form.how a datatable gets populated, specifically with values in a @OneToMany collection,
I have Date as listed below:
17/03/2015 09:38:39 AM
17/03/2015 10:52:26 AM
10/03/2015 08:30:56 AM
02/03/2015 09:18:10 AM
02/03/2015 09:37:23 AM
02/03/2015 11:25:01 AM
02/03/2015 11:29:00 AM
02/03/2015 11:42:38 AM
02/03/2015 12:04:39 PM
02/03/2015 12:09:05 PM
02/03/2015 01:17:09 PM
02/03/2015 01:29:08 PM
I want them to sort them as per below result: (Same date one should be sort by timestamp)
17/03/2015 10:52:26 AM
17/03/2015 09:38:39 AM
10/03/2015 08:30:56 AM
02/03/2015 01:29:08 PM
02/03/2015 01:17:09 PM
02/03/2015 12:09:05 PM
02/03/2015 12:04:39 PM
02/03/2015 11:42:38 AM
02/03/2015 11:29:00 AM
02/03/2015 11:25:01 AM
02/03/2015 09:37:23 AM
02/03/2015 09:18:10 AM
I tried using Collection.sort using compareTo but result is not expected.
I'm doing a project with very defined requirements. Input and output will be done to and from a file. Both the input and output files should have the same format. Each file will consist of a series of lines formatted as follows:
Year Rank Artist Title
That is, each line of the file will consist of the year, rank, artist, and title of a single song, with each of the fields separated by tabs ( ). Output files must maintain this format—you should be able to use the output file of one run of the program as the input to another run.
The first part of my project is to make a Song class, with 6 methods:
public static Song parse(String s) { //Parse a string of the form “Year Rank Artist Title” and create a Song object with the given values.
}
public int getYear() { //returns the year of the song
}
public int getRank() { //returns the rank of the song
[Code] .....
So far, I have worked out my Song class like this:
Java Code:
import java.util.Scanner;
public class Song {
private int year;
private int rank;
private String artist;
private String title;
[Code] ....
I know there's definitely a problem with my parsing, as I am getting the
Exception in thread "main" java.util.NoSuchElementException
when I attempt to input a test String at my variables.
Should I try using StringTokenizer and Integer.parseInt()? I think that perhaps the reason why an error is occuring is because the String is being parsed into Strings and there are no int values to be inputted into the year and rank variables.
Or is there a way to do this with Scanner?
I am currently working on a Java project, below are my attempts at coding so far:
public class MyZoo
{
// zoo identifier
private String zooId;
// a number used in generating a unique identifier for the next animal to be added to the zoo
private int nextAnimalIdNumber;
// zstorage for the Animal objects
private TreeMap<String, Animal> animals;
[Code] ....
I currently cannot get the printAllAnimals() method to work as it should.
When executing the method printAllAnimals(), it does not do anything, when it is supposed to use the Collection object c, so that animals stored in the zoo can easily be checked.
I have one table in DB i.e. emp. I want to perform all CRUD (insertion,selection,deletion,updation) in DB. Now i want to populate that data in jsp page. Which Collection framework?
View Replies View RelatedI got a question , which collection framework class will delete data if we call "get".
View Replies View RelatedWhere should I keep a collection of instances of my custom class? In the class itself in a static variable?
class Item {
int quantity;
static ArrayList<Item> list = new ArrayList<Item>();
Item(int q) {
quantity = q;
list.add(this);
}
// Some methods and whatnot.
}
Is it fine like this or should I implement the collection elsewhere? What say you?
I am using a IN clause in Oracle DB to pass a collection of custId to retrieve the customer details. If it was 10 or 50 custId's as a collection in IN clause it works fine. But if the collection grows bigger to 500 or 1000 then it is pretty slow to load the JSP page with the customer details.
Here is the query:-
select CustName, CustAge, CustCity, CustPin from CUSTOMER where custId IN (....)
The list of custId that is passed through Hibernate query.setParameterList()
How to optimize this query to make sure it displays the customer details faster even if the collection of elements which we pass is huge?
I am basically a Dot net developer. now im working on one Android project. my requirement is,
1. I have to call a web service, that will return XML data as String.
2. I have to read that XML string data.
3. Store those xml data into class collection(Collection is C# word, i dont know how here calling)
#1 i have done, #2 & #3 is pending. I knew reading xml is using SAX parser but, i dont know how to read from String using SAX.? Then how to store those XML data into a collection object.?
i tried with this link [URL] .... but, its confusing bcos, I am writing code Activity class but, there explaing with some Void Main class.
How to implement HashMap put and get methods without using Java Collection framework?
View Replies View RelatedI working on a bank program that gets a user id, name and balance from a text file. I need to be able to sort based on each field. I'm using Collection.sort and Comparator. I'm using String[] array = file.toFile().list(); to get the values for the array from the text file. I can't figure out how to make this into an arraylist. I understand the concept when hardcoding the data but having trouble doing it from a text file.
View Replies View RelatedI am working on a class that sorts and matches items in a collection of arrays. In the end, elements common to all 3 arrays should be printed. The idea is that as the first array is compared to the second it stores the matched items in tempArray. When all items are compared the tempArray should overwrite the checked array, and the process continues until all arrays are checked. I have set all the checking in a do loop that should run while the value is <= to the array length. This allows all items in the reference array to be checked. I get an index out of bounds message but not where I would expect it. I have tried varying the condition in the do while loop in the match method, but it did not change the result. There may be other issues I have not addressed with solving the algorithm, but this one has me stumped and I am not able to progress.
package testing;
public class TestMatchMain {
public static void main(String[] args) {
Comparable[] innerCollection0 = {1,2,3,4,5};
Comparable[] innerCollection1 = {1,1,5,6,7};
[Code] .....