Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Alphabetiser {
- /**
- * Alphabetiser.java by Chris Clarke, 11.04.2020
- * Find out whether or not two strings are anagrams of each other.
- */
- private static final String letters = "abcdefghijklmnopqrstuvwxyz";
- public int[] alphabetise (String s) {
- s = s.toLowerCase().strip();
- int[] alphabet = new int[26];
- // count occurences of each letter of the alphabet
- for (int i=0; i<alphabet.length; i++) {
- alphabet[i] = 0;
- for (int j=0; j<s.length(); j++) {
- if (s.charAt(j) == letters.charAt(i)) {
- alphabet[i]++;
- }
- }
- }
- return alphabet;
- }// alphabetise()
- public boolean areEqual(String str1, String str2) {
- int[] myAlpha1 = alphabetise (str1);
- int[] myAlpha2 = alphabetise (str2);
- for (int i=0; i<myAlpha1.length; i++) {
- //System.out.println (letters.charAt(i) + ": " + myAlpha1[i]);
- if (myAlpha1[i] != myAlpha2[i]) {
- return false;
- }
- }
- return true;
- }// areEqual()
- public static void main (String[] args) {
- Alphabetiser alph = new Alphabetiser();
- Scanner in = new Scanner (System.in);
- String str1, str2;
- System.out.print ("Enter first string: ");
- str1 = in.nextLine();
- System.out.print ("Enter second string: ");
- str2 = in.nextLine();
- if (alph.areEqual (str1, str2)) {
- System.out.println ("They are anagrams.");
- } else {
- System.out.println ("They're NOT anagrams.");
- }
- }// main()
- }// class Alphabetiser
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement