Java字符串

字符串特点:

1.字符串是常量,他们的值创建之后不可改变

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l6wVJRLr-1632129164750)(C:\Users\86156\Desktop\字符串的值不可改变.png)]

2.正是因为其不可改变,所以字符串可以共享使用

3.字符串效果上相当于char[]字符数组,但是底层原理是byte[]字节数组

创建字符串的几种方法:

1.String():创建一个空白字符串,不含有任何内容

2.string(char【】 array):根据字符数组的内容,来创建字符串

3.string(byte【】 array):根据字节数组的内容来创建字符串

4.直接创建: string str = “hello”:

注:直接写上双引号,就是字符串对象

字符串常量池(在堆之中 ):程序当中直接写上的双引号字符串,就在字符串常量池中;new的不在里边

对于基本类型来说:==是进行数值的比较

对于引用类型来说:==是进行地址值的比较

字符串中的常用方法

String字符串的内容比较常用方法:

public boolean equals(Object obj): 其中参数可以为任何对象,只有参数是一个字符串并且内容相同的才会给true,否则返回false

public boolean equalsIgnoreCase(String str) : 忽略大小写,进行内容比较

注:

  1. 任何对象都可以使用Object接收
  2. equals具有对称性 ,也就是a.equals(b)和b.equals(a)相同,效果一样
  3. 如果比较双方一个常量一个变量,推荐把常量字符写在前面
  4. NullPointerException: 空指针异常
String字符串当中与获取有关的常用方法:
// public int length(); 获取字符串当中含有的字符个数,拿到字符串的长度;
//  public String concat(String str); 将当前字符串和参数字符拼接成为返回值新的字符串
// public char charAt(int index) : 获取指定索引位置的单个字符(从索引0开始)
// public int indexOf(String str) : 查找参数字符串在本字符串当中首次出现的位置,如果没有返回-1值
String字符串中的截取方法

在这里插入图片描述

String当中与转换有关的常用方法

在这里插入图片描述

备注:CharSquence意思是说可以接受字符串类型

String字符串中的分割方法

在这里插入图片描述

字符串练习

在这里插入图片描述

public class StringPractise1 {

    public static void main(String[] args) {

        int[] array = {1, 2, 3};
        String s = returToNewStrng(array);
        System.out.println(s);

    }

    public static String returToNewStrng (int [] array){

        String str1 = "[";
        for (int i = 0; i < array.length; i++) {
            if (i == array.length-1){
                str1+="word"+array[i]+"]"; // 最后一个数组元素后跟的不是#,而是结尾”】“
            }else {
                str1 += "word" + array[i] + "#";
            }
        }
        return str1 ;
    }
}

在这里插入图片描述

public class StringPractise2 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入需要统计的字符串");
        String next = scanner.next();

        int countBig = 0;
        int countSmall = 0;
        int countNumber = 0;
        int countOther = 0;

        char[] charArray = next.toCharArray();
        for (int i = 0; i < charArray.length; i++) {
            char c = charArray[i];

            if ('A'<= c && c <='Z'){
                countBig++;
            }else if ('a'<= c && c <='z'){
                countSmall++;
            }else if ('0'<= c && c <='9'){
                countNumber++;
            }else {
                countOther++;
            }
        }
        System.out.println("大写字母出现的次数为 : "+countNumber+" 小写字母出现的次数为 :"
                +countSmall+" 数字出现的次数为 :"+countNumber+" 其他字符出现的次数为 :"+countOther);

    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值