Java >> Java tutorial >  >> Tag >> String

Java-program til at finde strengens vægt

Java-program til at finde strengens vægt | I dette afsnit lærer vi, hvordan man finder vægten af ​​en streng i programmeringssproget Java.

Hvad er vægten af ​​en streng ? Vægten af ​​strengen er summen af ​​vægten af ​​alle særlige tegn, der forekommer i strengen. Reglerne som følges ved beregning af strengens vægt er som følger:-

1) store og små bogstaver bør betragtes som samme og de vil have den samme vægt . Det betyder vægten af ​​A=a=1, vægten af ​​B=b=2, vægten af ​​C=c=3, så videre, og vægten af ​​Z=z=26.

2) Hvis tegnet er et ikke-alfabetisk tegn (undtagen a-z eller A-Z), så skal dens vægt ignoreres . For disse tegn vægt =0.

3) Hvis tegnet er en vokal så kan dens vægt ignoreres eller inkluderes baseret på tilstanden.

3) For de resterende tegns vægt af hvert bogstav er dets placering i det engelske alfabetsystem, dvs. vægten af ​​a=1, vægten af ​​b=2, vægten af ​​c=3, vægten af ​​d=4, og så videre…. Tilsvarende er vægten af ​​y=25, vægten af ​​z=26

Sådan finder du strengens vægt i Java

WeightOfString()-metoden tager to argumenter, og hvis værdien "ignorer" (anden parameter) er 0, vil vægten af ​​vokaler blive ignoreret, ellers vil den blive inkluderet.

Java-program til at finde strengen

public class Main {

   // if ignore value is 0 then only ignore vowels
   public static int weightOfString(String string, int ignore) {

      if(string == null || string.isEmpty()) {
         return 0;
      }
      
      // convert string to lower-case
      string = string.toLowerCase();
      
      // variable to store weight of string
      int weight = 0;
      
      for (int i = 0; i < string.length(); i++) {
         char letter = string.charAt(i);
         if (ignore == 0) {
            if (letter == 'a' || letter == 'e' || letter == 'i' 
                || letter == 'o' || letter == 'u') {
               continue;
            }
         }
         if (letter >= 97 && letter <= 122) {
            weight += letter - 96;
         }
      }
      return weight;
   }

   public static void main(String[] args) {
      String string = "Know Program";
      
      // ignore vowels
      System.out.println("Weight of string ignoring vowels = "
                        + weightOfString(string, 0));
      
      // include vowels
      System.out.println("Weight of string including vowels = "
                        + weightOfString(string, 1));
   }

} 

Output:-

Vægt af streng, der ignorerer vokaler =120
Vægt af streng inklusive vokaler =151

I ovenstående Java-program til at finde vægt af String, har vi defineret Main-klassen, som har den statiske metode weightOfString() som returnerer en heltalsværdi og tager to parametre streng og en heltalsværdi.

Først har vi tjekket om den givne streng er null eller tom? Hvis ja, så vil vægten af ​​strengen være 0. Returner derfor blot 0 til opkaldsmetoden. hvis du bruger Java 11, kan du bruge isBlank() i stedet for isEmpty().

Vi har konverteret den givne streng til små bogstaver, så vi kun skal skrive kode for små bogstaver. Og som regel vil de små og store bogstaver have samme vægt. Hvis du derfor skriver separat kode for hvert bogstav, er det bedre at konvertere strengen til enten små eller store bogstaver og kun skrive kode for ét bogstav.

Vi har initialiseret "vægt"-variablen til 0. I for-løkken får vi tegnet ved at bruge charAt()-metoden. Hvis "ignorer"-værdien er 0, så kontrollerer vi i if-blokken, om tegnet er en vokal ('aeiou' eller 'AEIOU') eller ej? Hvis ja, så fortsæt og ignorer vægten.

Da streng kun indeholder små bogstaver, skal vi derfor kun skrive kode for små bogstaver. Hvis bogstavet er større end eller lig med 97 eller mindre end eller lig med 122, lægges vægten af ​​bogstavet sammen og trækkes fra med 96. Til sidst returneres vægten. Se også:- Sådan fjerner du understreng fra streng Java


Java tag