Clase de string en Java | Serie 1

String es una secuencia de caracteres. En java, los objetos de String son inmutables, lo que significa una constante y no se pueden cambiar una vez creados.

Crear una string

Hay dos formas de crear strings en Java:

  • Literal de string
    String s = “GeeksforGeeks”;
  • Usando una nueva palabra clave
    String s = new String (“GeeksforGeeks”);

Constructores

  1. String (byte [] byte_arr) : construye una nueva string decodificando la array de bytes . Utiliza el conjunto de caracteres predeterminado de la plataforma para la decodificación.
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    String s_byte =new String(b_arr); //Geeks
    
  2. String (byte [] byte_arr, Charset char_set) : construye una nueva string decodificando la array de bytes . Utiliza char_set para decodificar.
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    Charset cs = Charset.defaultCharset();
    String s_byte_char = new String(b_arr, cs); //Geeks
    
  3. String (byte [] byte_arr, String char_set_name) : construye una nueva string decodificando la array de bytes . Utiliza char_set_name para decodificar.
    Se ve similar a las construcciones anteriores y aparecen antes de funciones similares, pero toma String (que contiene char_set_name) como parámetro, mientras que el constructor anterior toma CharSet.
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    String s = new String(b_arr, "US-ASCII"); //Geeks
    
  4. String (byte [] byte_arr, int start_index, int length) : construye una nueva string a partir de la array de bytes según start_index (ubicación inicial) y longitud (número de caracteres desde la ubicación inicial).
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    String s = new String(b_arr, 1, 3); // eek
    
  5. String (byte [] byte_arr, int start_index, int length, Charset char_set) : construye una nueva string a partir de la array de bytes según start_index (ubicación inicial) y longitud (número de caracteres desde la ubicación inicial) . Utiliza char_set para decodificar.
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    Charset cs = Charset.defaultCharset();
    String s = new String(b_arr, 1, 3, cs); // eek
    
  6. String (byte [] byte_arr, int start_index, int length, String char_set_name) : construye una nueva string a partir de la array de bytes según start_index (ubicación inicial) y longitud (número de caracteres desde la ubicación inicial) . Utiliza char_set_name para decodificar.
    Ejemplo:
    byte[] b_arr = {71, 101, 101, 107, 115};
    String s = new String(b_arr, 1, 4, "US-ASCII"); // eeks
    
  7. String(char[] char_arr) – Asigna una nueva string de la array de caracteres dada.
    Ejemplo:
    char char_arr[] = {'G', 'e', 'e', 'k', 's'};
    String s = new String(char_arr); //Geeks
    
  8. String(char[] char_array, int start_index, int count) : asigna una string de una array de caracteres determinada, pero elige contar caracteres de start_index .
    Ejemplo:
    char char_arr[] = {'G', 'e', 'e', 'k', 's'};
    String s = new String(char_arr , 1, 3); //eek
    
  9. String(int[] uni_code_points, int offset, int count) : asigna una string de un uni_code_array pero elige los caracteres de recuento de start_index .
    Ejemplo:
    int[] uni_code = {71, 101, 101, 107, 115};
    String s = new String(uni_code, 1, 3); //eek
    
  10. String(StringBuffer s_buffer) – Asigna una nueva string de la string en s_buffer
    Ejemplo:
    StringBuffer s_buffer = new StringBuffer("Geeks");
    String s = new String(s_buffer); //Geeks
    
  11. String(StringBuilder s_builder) : asigna una nueva string de la string en s_builder
    Ejemplo:
    StringBuilder s_builder = new StringBuilder("Geeks");
    String s = new String(s_builder); //Geeks
    

Métodos de string

  1. int length():  Devuelve el número de caracteres en la String.
    "GeeksforGeeks".length();  // returns 13
  2. Char charAt(int i) Devuelve el carácter en el i -ésimo índice.
    "GeeksforGeeks".charAt(3); // returns  ‘k’
  3. Substring de string (int i) devuelve la substring desde el i -ésimo  carácter de índice hasta el final.
    "GeeksforGeeks".substring(3); // returns “ksforGeeks”
  4. String substring (int i, int j) Devuelve la substring del índice i al índice j-1.
     "GeeksforGeeks".substring(2, 5); // returns “eks”
  5. String concat( String str) Concatena la string especificada al final de esta string.
     String s1 = ”Geeks”;
     String s2 = ”forGeeks”;
     String output = s1.concat(s2); // returns “GeeksforGeeks”
    
  6. int indexOf (String s) Devuelve el índice dentro de la string de la primera aparición de la string especificada.
     String s = ”Learn Share Learn”;
     int output = s.indexOf(“Share”); // returns 6
    
  7. int indexOf (String s, int i) Devuelve el índice dentro de la string de la primera aparición de la string especificada, comenzando en el índice especificado.
     String s = ”Learn Share Learn”;
     int output = s.indexOf("ea",3);// returns 13
    
  8. Int lastIndexOf( String s) Devuelve el índice dentro de la string de la última aparición de la string especificada.
     String s = ”Learn Share Learn”;
     int output = s.lastIndexOf("a"); // returns 14
    
  9. boolean equals( Object otherObj):  compara esta string con el objeto especificado.
     Boolean out = “Geeks”.equals(“Geeks”); // returns true
     Boolean out = “Geeks”.equals(“geeks”); // returns false
    
  10. boolean equalsIgnoreCase (String anotherString) compara una string con otra string, ignorando las consideraciones de mayúsculas y minúsculas.
     Boolean out= “Geeks”.equalsIgnoreCase(“Geeks”); // returns true
     Boolean out = “Geeks”.equalsIgnoreCase(“geeks”); // returns true
  11.  int compareTo( String anotherString) Compara lexicográficamente dos strings.
     int out = s1.compareTo(s2);  // where s1 ans s2 are
                                 // strings to be compared
    
     This returns difference s1-s2. If :
     out < 0  // s1 comes before s2
     out = 0  // s1 and s2 are equal.
     out > 0   // s1 comes after s2.
    
  12. int compareToIgnoreCase( String anotherString):  compara dos strings lexicográficamente, ignorando las consideraciones de mayúsculas y minúsculas.
     int out = s1.compareToIgnoreCase(s2);  
    // where s1 ans s2 are 
    // strings to be compared
    
     This returns difference s1-s2. If :
     out < 0  // s1 comes before s2
     out = 0   // s1 and s2 are equal.
     out > 0   // s1 comes after s2.
    

    Nota: en este caso, no considerará el caso de una letra (ignorará si es mayúscula o minúscula).

  13. String toLowerCase() Convierte todos los caracteres de String a minúsculas.
    String word1 = “HeLLo”;
    String word3 = word1.toLowerCase(); // returns “hello"
    
  14. String toUpperCase() Convierte todos los caracteres de String a mayúsculas.
    String word1 = “HeLLo”;
    String word2 = word1.toUpperCase(); // returns “HELLO”
    
  15. String trim() Devuelve la copia de String, eliminando los espacios en blanco en ambos extremos. No afecta los espacios en blanco en el medio.
    String word1 = “ Learn Share Learn “;
    String word2 = word1.trim(); // returns “Learn Share Learn”
    
  16.  String replace (char oldChar, char newChar) devuelve una nueva string reemplazando todas las apariciones de oldChar con newChar.
    String s1 = “feeksforfeeks“;
    String s2 = “feeksforfeeks”.replace(‘f’ ,’g’); // returns “geeksgorgeeks”
    

    Nota: – s1 sigue siendo feeksforfeeks y s2 es geeksgorgeeks

  17. Programa para ilustrar todos los métodos de string:

    // Java code to illustrate different constructors and methods 
    // String class.
      
    import java.io.*;
    import java.util.*;
    class Test
    {
        public static void main (String[] args)
        {
            String s= "GeeksforGeeks";
            // or String s= new String ("GeeksforGeeks");
      
            // Returns the number of characters in the String.
            System.out.println("String length = " + s.length());
      
            // Returns the character at ith index.
            System.out.println("Character at 3rd position = "
                               + s.charAt(3));
      
            // Return the substring from the ith  index character
            // to end of string
            System.out.println("Substring " + s.substring(3));
      
            // Returns the substring from i to j-1 index.
            System.out.println("Substring  = " + s.substring(2,5));
      
            // Concatenates string2 to the end of string1.
            String s1 = "Geeks";
            String s2 = "forGeeks";
            System.out.println("Concatenated string  = " +
                                s1.concat(s2));
      
            // Returns the index within the string
            // of the first occurrence of the specified string.
            String s4 = "Learn Share Learn";
            System.out.println("Index of Share "
                               s4.indexOf("Share"));
      
            // Returns the index within the string of the
            // first occurrence of the specified string,
            // starting at the specified index.
            System.out.println("Index of a  = "
                               s4.indexOf('a',3));
      
            // Checking equality of Strings
            Boolean out = "Geeks".equals("geeks");
            System.out.println("Checking Equality  " + out);
            out = "Geeks".equals("Geeks");
            System.out.println("Checking Equality  " + out);
      
            out = "Geeks".equalsIgnoreCase("gEeks ");
            System.out.println("Checking Equality " + out);
              
            //If ASCII difference is zero then the two strings are similar
            int out1 = s1.compareTo(s2);
            System.out.println("the difference between ASCII value is="+out1);
            // Converting cases
            String word1 = "GeeKyMe";
            System.out.println("Changing to lower Case " +
                                word1.toLowerCase());
      
            // Converting cases
            String word2 = "GeekyME";
            System.out.println("Changing to UPPER Case "
                                word2.toUpperCase());
      
            // Trimming the word
            String word4 = " Learn Share Learn ";
            System.out.println("Trim the word " + word4.trim());
      
            // Replacing characters
            String str1 = "feeksforfeeks";
            System.out.println("Original String " + str1);
            String str2 = "feeksforfeeks".replace('f' ,'g') ;
            System.out.println("Replaced f with g -> " + str2);
        
    }

    Producción :

    String length = 13
    Character at 3rd position = k
    Substring ksforGeeks
    Substring = eks
    Concatenated string = GeeksforGeeks
    Index of Share 6
    Index of a = 8
    Checking Equality false
    Checking Equality true
    Checking Equality false
    the difference between ASCII value is=-31
    Changing to lower Case geekyme
    Changing to UPPER Case GEEKYME
    Trim the word Learn Share Learn
    Original String feeksforfeeks
    Replaced f with g -> geeksgorgeeks
    

    Para Set – 2 puede consultar: Clase Java.lang.String en Java | conjunto 2

     Este artículo es una contribución de Rahul Agrawal. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *