Two String Array Declaration?
Apr 30, 2015My Question is Suppose I am declaring an String array as
String[] a
or
String a[]
or
Comparable[] a
Will there be any performance or other advantage or disadvantage using these syntax?
My Question is Suppose I am declaring an String array as
String[] a
or
String a[]
or
Comparable[] a
Will there be any performance or other advantage or disadvantage using these syntax?
I have doubts in string declaration. As I know we can declare string in two ways:
1. String a=new String("Hello");
2. String b="Hello";
What is exact difference between them? Another thing is when I check (a==b) it retuns me false, but when I check a.equals(b) it returns me with true. Why So?
I tried this:
String[][]f = new String[1][1] {{"Harry"}{"Hairy"}};
I also tried this:
String[][]f = new String[1][1] {{"Harry"},{"Hairy"}};
but I get an error
Whilst pre-preparing for java certification, one of the online mock exams has slightly confused me by saying my answer was incorrect for multi-dimension array 'declaration and instantiation'.
This is one of the answers i chose - which was marked as incorrect
a)
int[][] array2d = {{123}, {4,5}};
Which looks absolutely fine to me.One of the other answers, which i agree is correct and so does the mock exam is
b)
int [][] array2d = new int[2][2];
Netbeans tells me it's an illegal start of expression during the initialisation of the interactWithUser method.
public class InvertLetter {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
/**
* String mit den Kleinbuchstaben.
*/
final String lowercase = "abcdefghijklmnopqrstuvwxyz";
[Code] ....
Let's say within a class I create a method that takes care of creating a java swing layout with labels, buttons etc.. then attach an action listener (inner class) for each button to change a respective label text. All I would need is that the action listener method can access and modify the label as needed.
Have read about static, protected, private, getters and setters but honestly bit confused about which structure should be adopted as a best practice. Global static protected variables for the labels along with private inner classes implementing ActionListeners believe will do the trick and will be able to access the labels but not convinced this is good practice.
import java.util.HashSet;
import java.util.ArrayList;
public class Graph
{
double [] [] adj;
graph (double [] [] a)
{
adj= new double [a.length][a.length];
for (int i=0;i<a.length;i++)
for (int j=0;j<a.length;j++)
adj[i][j]=a[i][j];
}
C:UserscDesktopGraph.java:: error: invalid method declaration; return type required
graph (double [] [] a)
Ok say you have
public class MyClass {
private int x = 5;
Object myObject = new Object();
public MyClass(){
}
}
When would the myObject be created? Before or after the constructor? And does this mean you can't pass
this into the parameters of that object?
Code a Java method that accepts a String array and a String. The method should return true if the string can be found as an element of the array and false otherwise. Test your method by calling it from the main method which supplies its two parameters (no user input required). Use an array initialiser list to initialise the array you pass. Test thoroughly.
public class test {
public static void main(String[] args) {
Printhelloworld();
String[] verbs = {"go", "do", "some", "homework"};
printArrays(verbs);
[Code] .....
How do I compare a String to each element of a string array?
For example:
int headscount = 0;
if (coins[i].equals("heads")){
headscount++;
System.out.println("b" + headscount);
}
This doesn't give me the right value because the IDE says that equals() is an incompatible type. I also tried changing the "heads" to an variable, but the results remains the same.
I would prefer using an Array!
So I'm creating a class which when given three inputs uses them as sides of a triangle and tells ther user what type of triangle it is, or if the input is invalid, tells them why it is invalid. I'm readin the input as a string and then trying to split it into a string array, from there checking to see if it has 3 elements.. in which the data is good at that point, and then converting them to ints and checking to see if they're negative ansd finally checking to see if they can work as sides of a triangle ie a+b >c, a+c >b , b+c >a.
I'm trying to split it into an array of strings but am getting an error, and can't seem to figure out why as this should be working from what I've read of the string.split method online.
import java.util.*;
public class TriangleTest{
private int sideA;
private int sideB;
private int sideC;
public static void main(String[] args){
TriangleTest triangle = new TriangleTest("3 4 5");
[Code] ....
The output reads [Ljava.lang.String;@15db9742
I have the following code in which I am looping through the rows of one array (composed of Strings) and copying it to another array. I am using .clone() to achieve this and it seems work as it changes the memory location of the rows themselves. I did notice that the String objects are still pointing to the same location in memory in both arrays but I won't worry about that for now, at the moment I just want to understand why the array I am cloning is not successfully assigning to the other array.
This is the incorrect line: ar[r] = maze[r].clone();
My code:
private String[][] maze = {{"*","*","*"," ","*","*","*","*","*","*"},
{"*"," ", "*"," "," "," ","*"," ","*","*"},
{"*"," ","*","*","*"," ","*"," ","*","*"},
{"*"," "," "," "," "," "," "," "," ","*"},
{"*","*","*","*","*"," ","*","*","*","*"},
{"*","*","*","*","*"," ","*","*","*","*"}};
//private String[][] mazeCopy = copyMaze(new String[6][10]);
private <T> T[][] copyMaze(T[][] ar){
for (int r = 0; r < ar.length; r++){
ar[r] = maze[r].clone();
}
return ar;
}
My compiler says: Required: T[]. Found: java.lang.String[]
Since ar[r] is an array and .clone() also returns an array why is this line incorrect.
I'm new to Java and have been stuck on how to use a final declaration statement once it's made. Below is a class I'm creating with the intention of calling it under a main method. I don't understand if I'm supposed to do anything else, like do some sort of get/set, or if the final static line is all I need. And, I don't know how I call it to the main method once I do.
public class Shirt//class name.
{
int collarSize;//data field.
int sleeveLength;//data field.
public final static String MATERIAL = "cotton";//final data field for material.
[Code] ....
I started learning JSTL (Java Standard Tag Library) and i got to know that i need to mention this directive in JSP page
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
in order to use JSTL tags.
I am not able to understand what does this URI exists at all ?? I feel it making things complex and meaningless or else i am missing something hidden and secret.
when a new object is created in Java it follows the idiom:
Object obj = new Object();
where the Object() constructor matches the object type Object.
But what if it doesn't? I understand from the Oracle Docs on creating objects and polymorphism that the constructor must be in that object's class or one of its subclasses. However, suppose we wanted to declare a new stack. My first instinct would be:
Stack s1 = new Stack();
But I assume it's valid to do it this way, too:
Object s2 = new Stack(); // Is there a difference here? What are we really saying about s2? I'm guessing s2 is simply an empty stack, but only has access to the Object class methods? I'm not sure why someone would ever do this, but I want to solidify my understanding of the Java hierarchy. Are there really any circumstances where someone would use a subclass's constructor when creating a new object?
I have one interface with three(more than one) method declaration. In the subclass that implements it I want to define only one method not all three not even blank definition of them.Is there any keyword or method for that. How to do it? Is it possible to do it? In GUI we use adapter classes to achieve it. What for console application?
View Replies View RelatedI know that I can declare and initialize an member variable inside a class in a single statement but I can't do them on separate sentence. Why?
For example, I am allowed to do the following,
class A{
int a = 5;
// rest of the class
}
But I am not allowed to do this,
class A{
int a;
a = 5; // it doesn't compile even when the variable 'a' is static
// rest of the class
}
Why java don't allow me to do that?
I have an application that uses an object that is declared globally for the class. Within a method that is triggered by a user event, it creates a new object and assigns it to this global object declaration. My question is, when the object is overwritten multiple times by the user selecting the button that calls this method, will the older instances be garbage collected or is there still a reference to them? Is there any downfall to this logic and if so what would be a solution.
View Replies View RelatedTrying to convert 2D array to String using toString() to be able to print the array but when I try to use it I just get the memory location
public class Forest
{
private int h;
private int w;
private double p = 0.7;
private int[][] f;
Forest(int w, int h)
[code]....
I have to implement all the stack methods in java such as push, pop empty, not using the ready methods but have to create them and to execute an exercise but is sth wrong with it
public class Stiva {
/** the problem is here how to declare the stack 1 and stack 2 and kreu(head) gjmax(size)*/
int Gjmax;
int array[] = new int[Gjmax];
int kreu;
private Stiva stiva1;
private Stiva stiva2;
[Code] .....
I have an array of Strings, one on each line and I need to convert them into an array of char's.
For Example:
This
is
an
Example
of
what
my
input
is.
In order to accomplish that I did the following-
String[] lotsOfText = a.gettingAnArrayAsAReturn();
char [][] myCharArray = new char [lotsOfText.length] [lotsOfText.length];
for(int i=0; i<lotsOfText.length; i++){
for(int j=0;j<lotsOfText[i].length();j++){
myCharArray[i][j] = lotsOfText[j].charAt(j); }}
But whenever I try this and then try to print the output :
for (int i = 0; i < lotsOfText.length; i++) {
for (int j = 0; j < lotsOfText[i].length(); j++) {
System.out.print(myCharArray[i][j]);
}
}
I get nothing. I'm not sure what's the flaw in my logic, is it the char array initialization that's wrong or is it something else ?
I just tried to fill an array with some numbers, calculated by a other function.I just tried to print this array as array, but it doesnt work. Maybe its just about the main method.
public static void main(String[] args) {
ggT(5);
}
public static int ggT(int a, int b) {
while(a!=b){
if(a>b) {
a=a-b;
} else {
b=b-a;
}
}
return a;
[code]....
import java.util.Scanner;
public class days
{ public EnumTest ()
{ this.day = weeks/months/years}
final int daysInMonth = 30; //constants
final int monthsInYear = 12;
final int daysInWeek = 7;
public void convert()
[Code] ....
after compiling it shows invalid method declaration ; return type required.
I have a string array but each cell in the 1d string array stores each character the text file is :
"START START START
The quick brown fox jumps over the lazy dog 1234567890-= !"$%^&*()_+ QWERTYUIOP{}ASDFGHJKL:@~|ZXCVBNM<><? /.,mnbvcxzasdfghjkkl;'#][poiuytrewq789654123.0
+-*/``""$% hello this is a test file using all the characters availible on the keyboard for input END END END END"
so in the string it is:[0] = S, [1]=A, [2]=R ...ect along the text basically i need to convert each character in each cell of the 1d string array to its hesidecimal value..i have created my own method which will take in a char and return a string containing the charcters hex value.
public static String toHex(char c) {
char char2ascii = c;
int i = 0;
int num = (int) char2ascii;
String hex ="";
[code]...
what i want to do is run each cell through the toHex method so i eventually have a string array containing the hex value of each character in my text.
example..i want:
String[] hexarray = S, T, A, R, T
a run it through my method to convert to hex then it will become
String[] hexarray = 53, 54, 41, 52, 54
Im not allowed to use inbuilt libarys and classes to do the hex conversion thats why i have my own method for it .
I have to create an inventory program that displays a product number, name of product, number of units in stock, price of each unit, and then at the end total up the entire value of the inventory. I am a beginner as I am 5 weeks into my first programmer class and I do want to learn how to program. I am able to get the inventory array with the (int) to display in the columns but I do not know how to get the String array with the DVD's to display where they are suppose to. I also cannot figure out how to calculate the quantity with the price to give me an overall total.
This is my code so far:
public class Product // begin Product class
{
int Stock[] = { 101, 102, 103, 104, 105 };
String[] DVD = new String[5];
double Price[] = { 10.00, 10.00, 12.50, 18.50, 11.50 };
int Quantity[] = { 1, 5, 4, 3, 4 };
[Code] .....
One of the requirements of my programming assignment is that a user enters a command along with two numbers. For example, if I entered the following command:
I 5 6
The program create an image like this (it wouldn't be outputted though):
00000
00000
00000
00000
00000
00000
It creates a 5 x 6 "image". This is where my troubles begin. The program should also accepts other commands, such as:
L 3 2 F
which would produce (also not outputted):
00000
00F00
00000
00000
00000
00000
Here is my method for creating an "image" with an M * N array
for (int i = 0; i < column; i++) {
for (int j = 0; j < row; j++) {
System.out.print("0");
} System.out.println();
}
The code works, but I need to store the image in an array so it can be changed by other methods (I can't create the image manually every time). I tried doing something like this but it doesn't work:
public static String[][] createImage(int row, int column) {
String[][] image = new String[row][column];
for (int i = 0; i < column; i++) {
for (int j = 0; j < row; j++) {
image[j][i] = "0";
} System.out.println();
} return image;
}
This method outputs as many blank lines as the columns I entered and the memory location of image.
So my question is: how would I store "0" in a 2D array so that it can be accessed and changed by other methods?Or, am I using a 2D array incorrectly and will the image have to be created manually every time? If so, how would I output image if it is created in a separate method?