Java中的String和Arrays类常用方法详解

        在Java编程中,StringArrays是两个非常常用的类。String用于处理字符串,而Arrays类提供了对数组的操作方法。

一、String类

String类是Java中用于表示字符串的类。它提供了许多方法用于字符串的操作。以下是一些常用的方法及其示例。因为java中存在方法重载,一个方法名对应多个方法,我就拿出其中一个作为示例,用法差不多类似。

1. length()

返回字符串的长度

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        int length = str.length();
        System.out.println("Length: " + length); // 输出: Length: 13
    }
}

2. charAt(int index)

返回指定索引处的字符。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        char ch = str.charAt(1);
        System.out.println("Character at index 1: " + ch); // 输出: Character at index 1: e
    }
}

3. substring(int beginIndex, int endIndex)

返回从beginIndexendIndex之间的子字符串。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        String subStr = str.substring(0, 5);
        System.out.println("Substring: " + subStr); // 输出: Substring: Hello
    }
}

4. equals(Object anObject)

比较两个字符串是否相等,返回boolean类型的值,true/false

public class StringExample {
    public static void main(String[] args) {
        String str1 = "Hello";
        String str2 = "Hello";
        boolean isEqual = str1.equals(str2);
        System.out.println("Are strings equal? " + isEqual); // 输出: Are strings equal? true
    }
}

5. equalsIgnoreCase(String anotherString)

比较两个字符串(忽略大小写)是否相等。

public class StringExample {
    public static void main(String[] args) {
        String str1 = "Hello";
        String str2 = "hello";
        boolean isEqualIgnoreCase = str1.equalsIgnoreCase(str2);
        System.out.println("Are strings equal (ignore case)? " + isEqualIgnoreCase); // 输出: Are strings equal (ignore case)? true
    }
}

6. toUpperCase()

将字符串转换为大写

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        String upperStr = str.toUpperCase();
        System.out.println("Uppercase String: " + upperStr); // 输出: Uppercase String: HELLO, WORLD!
    }
}

7. toLowerCase()

将字符串转换为小写。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        String lowerStr = str.toLowerCase();
        System.out.println("Lowercase String: " + lowerStr); // 输出: Lowercase String: hello, world!
    }
}

8. trim()

去除字符串两端的空白字符。

public class StringExample {
    public static void main(String[] args) {
        String str = "  Hello, World!  ";
        String trimmedStr = str.trim();
        System.out.println("Trimmed String: " + trimmedStr); // 输出: Trimmed String: Hello, World!
    }
}

9. contains(CharSequence s)

判断字符串是否包含指定的子字符串。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        boolean contains = str.contains("World");
        System.out.println("Contains 'World'? " + contains); // 输出: Contains 'World'? true
    }
}

10. replace(CharSequence target, CharSequence replacement)

将字符串中的指定部分替换为新的字符串。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        String newStr = str.replace("World", "Java");
        System.out.println("New String: " + newStr); // 输出: New String: Hello, Java!
    }
}

11. indexOf(String str)

返回子字符串在字符串中第一次出现的索引。

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        int index = str.indexOf("World");
        System.out.println("Index of 'World': " + index); // 输出: Index of 'World': 7
    }
}

12. lastIndexOf(String str)

返回子字符串在字符串中最后一次出现的索引

public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World! Hello, Java!";
        int lastIndex = str.lastIndexOf("Hello");
        System.out.println("Last index of 'Hello': " + lastIndex); // 输出: Last index of 'Hello': 14
    }
}

13. 字符数组与字符串之间的转换

字符数组转字符串
public class StringExample {
    public static void main(String[] args) {
        char[] charArray = {'H', 'e', 'l', 'l', 'o'};
        String str = new String(charArray);
        System.out.println("String from char array: " + str); // 输出: String from char array: Hello
    }
}
字符串转字符数组
public class StringExample {
    public static void main(String[] args) {
        String str = "Hello";
        char[] charArray = str.toCharArray();
        System.out.println("Char array from string: " + Arrays.toString(charArray)); // 输出: Char array from string: [H, e, l, l, o]
    }
}

二、Arrays类

Arrays类提供了操作数组的实用方法,包括排序、搜索、比较、填充等。以下是一些常用方法及其示例。

1. sort(int[] a)

对数组进行升序排序。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr = {5, 2, 8, 1, 3};
        Arrays.sort(arr);
        System.out.println("Sorted array: " + Arrays.toString(arr)); // 输出: Sorted array: [1, 2, 3, 5, 8]
    }
}

2. binarySearch(int[] a, int key)

使用二分法的前提是数组是有序的,使用二分搜索算法在已排序的数组中查找元素。如果找到,则返回索引,否则返回负值。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 5, 8};
        int index = Arrays.binarySearch(arr, 3);
        System.out.println("Index of 3: " + index); // 输出: Index of 3: 2
    }
}

3. equals(int[] a, int[] a2)

比较两个数组是否相等。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr1 = {1, 2, 3};
        int[] arr2 = {1, 2, 3};
        boolean isEqual = Arrays.equals(arr1, arr2);
        System.out.println("Are arrays equal? " + isEqual); // 输出: Are arrays equal? true
    }
}

4. fill(int[] a, int val)

用指定的值填充数组。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr = new int[5];
        Arrays.fill(arr, 7);
        System.out.println("Filled array: " + Arrays.toString(arr)); // 输出: Filled array: [7, 7, 7, 7, 7]
    }
}

5. copyOf(int[] original, int newLength)

复制数组,返回一个新的数组。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        int[] newArr = Arrays.copyOf(arr, 5);
        System.out.println("New array: " + Arrays.toString(newArr)); // 输出: New array: [1, 2, 3, 0, 0]
    }
}

6. toString(int[] a)

返回数组的字符串表示形式。

import java.util.Arrays;

public class ArraysExample {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        String arrStr = Arrays.toString(arr);
        System.out.println("Array as String: " + arrStr); // 输出: Array as String: [1, 2, 3]
    }
}

  • 20
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值