I am getting incombatable types, I do not know why I am getting them..why I am getting the error?
The Error I am getting:
stringSort.java:26: error: incompatible types
if(myArray[j].compareToIgnoreCase(myArray[i].toString())){
^
required: boolean
found: int
*/
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();
However, whenever I run the method, the element that should go last, Zachary, in this case, ends up getting moved to the front for some reason. I'm not sure why.
I tried changing what the first element was initialized to, to the variable i as that would logically work as well, but it ends up missing the first element in the list.
Java Code:
public static void selectionStringAscendingSort (String[] words){ int i, j, first; String temp; for ( i = 1; i < words.length; i++ ) { first = 0; //initialize to subscript of first element for(j = i; j < words.length; j ++){ //locate smallest element between positions 1 and i. if( words[ j ].compareTo(words[ first ]) <0 ) first = j; } temp = words[ first ]; //swap smallest found with element in position i. words[ first ] = words[ i ]; words[ i ] = temp; System.out.println(Arrays.toString(words)); } System.out.println(Arrays.toString(words)); } mh_sh_highlight_all('java');
I have a question about selection sort. If I had an array of numbers, 1 2 3 4 100 0, and used the selection sort method (below) on the array,would the 0 slowly work it's way down to the end?
I'm having a problem printing out the descending order of my array. The array order goes like (Title,Studio,Year). I try to create to ints with the compareTo method but when the program is run the I get array out of bounds. Could the answer possibly be that in order not not have the out of bounds error, to create a for loop inside of the while?
public class Movie2 { // instance variables private int year; private String Title; private String Studio;
I have an ArrayList, based on the class which stores cricket players, their names and runs scored.When I use the Collections.sort() method my arraylist is sorted alphabetically by forename.how to OverRide the comparing method to sort by runs, and thus the code I use to sort the list?
im trying to create an insertion sort method for a vector. I know how to insertionsort for an array, but for a vector im having problems
Source code: PHP Code: package test; import java.util.*; import java.io.*; public class LinearSearch { public static void main (String[] args) { Vector myVector = new Vector();
[Code]...
I'm getting errors at lines 38 and 39 "Left-hand side of an assignment must be a variable". "Syntax-error(s) on token(s) misplaces contructor(s)". How can i fix them ??
I'm doing an exercise we're you're supposed to sort strings in alphabetical order, without importing anything , not using the Arrays.sort() method.
I think I got the method down partially right, or it is on the right track, but it is completely not being applied to my answer. All it prints out in the console is the actual String array twice, without sorting anything.
public class arrayofstrings { public static void sort(String[] a) { String temp= ""; int min; int i= 0; for (int j=0; j<a.length-1; j++) {
import java.util.ArrayList; import java.util.Random; public class NumSorting { public static int numOfComps = 0, numOfSwaps = 0; public static void main(String[] args)
[Code] ....
What is wrong with my code in this sorting program? It won't copy the random generated numbers to the sort method. How to get the random generated numbers to copy to the sort method. Below is what the program is displaying.
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()
This time I am having difficulties with selection sort method, but not with the method itself (I think). So I need to sort an array and return the result of each step.
This is the main code:
public class Functionality { public static int[][] selctionsort(int[] a) { for (int i=0; i<a.length; i++) { int least = i; for (int j=i+1; j<a.length; j++)
[Code] ....
And this is the Test folder:
import static org.junit.Assert.assertArrayEquals; public class PublicTests { public static void main(String[] args) { int[] a = new int[] { 35, 7, 63, 42, 24, 21 }; int[][] b = new int[][] { new int[] { 7, 35, 63, 42, 24, 21 },
[Code] ....
Now I am not sure what should I write in return since the 2nd (test) project has int[][] and in my main project I am working with int [].
How can I write a method that takes a string with duplicates letters and returns the same string which does not contain duplicates. For example, if you pass it radar, it will return rad. Also i would like to know how can I Write a method that takes as parameters the secret word and the good guesses and returns a string that is the secretword but has dashes in the places where the player has not yet guessed that letter. For example, if the secret word is radar and the player has already guessed the good guesses letters r and d, the method will return r-d-r.
I am currently trying to make a calculator in Java. I want to use the String split method to tokenize the string of characters inputted. I thought I was using the String split method wrongly, because I had surrounded the characters I wanted to delimit with square brackets. However, when I removed the square brackets, the code threw an exception when I pressed the equal button. The exception was a PatternSyntaxException exception. Am I using the String split method wrongly? And why is the exception thrown? Here is my code:
import javax.swing.*;//import the packages needed for gui import java.awt.*; import java.awt.event.*; import java.util.Arrays; import java.util.List; import static java.lang.Math.*; public class CalculatorCopy { public static void main(String[] args) {
i am trying to write a class method which will take in a string and returns a string which is the reversed version of that string. it compiles fine but when i try to run it it states Main method not found in class StringReverse,please define the main method as public static void main(String[]args). I am new to java and cannot figure out
import javax.swing.JOptionPane; public class StringReverse { public String reverseString(String str){ JOptionPane.showInputDialog(null,"Please enter word"); char c = str.charAt(str.length()-1); if(str.length() == 1) return Character.toString(c); return c + reverseString(str.substring(0,str.length()-1));}}
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);
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");
I need to get the string encodedString from the method encode able to be used in the decode method.
Java Code:
public String encode(String plainText) { int prepareString; int shiftChar; String preparedString2 = prepareString(plainText); String encodedString = ""; for(int c = 0 ; c < preparedString2.length();c++)
I understand that the intern() method is to be used when you create Strings using the new operator and you want the 2 strings to be the same object. But in that case, why can't we just enclose the 2 strings in double quotes instead of using the new operator
I have to take a user's input and count the number of vowels in a String. If I start with a lowercase vowel it gets counted, but if I start with an uppercase or different letter I get nothing. Either way, I can not get the counter to go higher than 1.
import java.util.Scanner; public class countVowels { public static void main(String[] args) { Scanner kb=new Scanner(System.in); System.out.println("Enter a sequence of letters:"); String letters=kb.next();
In this exercise, create a program that asks a user for a phrase, then returns the phrase with the words in reverse order. Use the String class's .split() method for this.
Example input The rain in Spain falls mainly on the plain
Example output plain the on mainly falls Spain in rain The
While I understand the assignment, nowhere in the text is it covered how to reverse the order of the words in the string. I understand using the .split method, but not for this exercise.
Here is my code so far.
import java.util.*; /** * Java class SplitString * This program asks for a phrase, and the code allows the phase to return in reverse order. */
public class SplitString { public static void main (String[] args){ //set phrase input and mixed which will be the result
[Code] ....
As you can see, I have been googling this method and have come up nearly empty. My text does not cover the .reverse() method. The only thing it covers with .split() is how to split a string. I also tried StringBuilder with no success.
I am little confused about String creation in java.
Doubt 1: How String objects assigned to Pool area:
1. String s="in pool"; 2. String s1= new String("not in pool");
How many objects created in statement 1 and 2. According to recent discussion with my colleague, one object created in String pool in case 1. And in case 2, two objects are created, one as literal goes to String pool and other with new() opr goes to Heap.
If above is correct, Ain't we wasting double memory for same object ? Really need clear understanding on this
Doubt 2: How does intern() work: Please see if my below explanation is correct
1. If String literal is already present in String pool , and i create a same string with new operator, reference to object is changed to pool area.
2. If String object is created using new operator and intern is called on it. If same string object is not present in the String Pool, Its moved to String pool and reference to this in Pool is returned.