java之String系统类调用

本文深入讲解 Java 中 String 类的各种常用方法,包括字符串的创建、获取、判断、替换、切割等功能,以及如何通过实例演示掌握这些方法的具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系统类  String(学习系统 的常用方法 方法 的使用)
* 字符窜是个常量,常量字符串
* 只要是对字符串进行操作 都返回一个新的字符串,因为原字符串不能更改
*/
public class demo01 {
    public static void main(String[] args) {
        //字符串存在于常量池当中 常量池在方法区
        //是字符窜本身没有发生变化,而是引用地址发生了变化
        //相当于 指针重新指向
        //字符串中的equals   比较的是两个字符串中的每一个字符
        //String str1 = "wanglong";
        //str1 = "dinpeng";
        //System.out.println(str1);
        // == 判断地址是否一样
        //string1和 string2有什么不同,分别代表几个对象 
        //string1 就一个对象abc string2有两个对象 abc 一个对象 然后 new又一个对象
        String string1 = "abc";
        String string2 = new String("abc");
    }
}

/*
* 1.获取
根据索引获取字符串中字符
char charAt(int index);
根据字符获取在字符串中的位置
int  indexof(int ch);
int indexof(int ch, int fromIndex);
*/
public class demo02 {
    public static void fun1() {
        //传入索引返回对应的字符
        String string = "wanglong";
        char c = string.charAt(1);
        System.out.println(c);
        //传入字符返回对应的索引
        int b = string.indexOf('g');
            System.out.println(b);
            //传入查找索引从当前位置开始查找
            int d = string.indexOf('g', 5);
            System.out.println(d);
            //传入字符串查找对应的位置 字符串wanglong
            int e = string.indexOf("long");
            System.out.println(e);

    }
    public static void main(String[] args) {
        //测试
        fun1();
    }
}

/*
* 2.判断
 *   是否包含这个字符串
 *    boolean contains(Charsequence s)
 *   是否以这个前缀开头
 *    boolean startsWith(String sufix)
 *   是否以这个后缀结尾
 *   boolean endsWith(String sufix)
 *   .jpg .png .jpeg
*/
public class demo03 {
    public static void fun1(){
        String string = "www.baidu.com";
        boolean d = string.contains("baidu");
        System.out.println(d);
        boolean e = string.startsWith("www");
        System.out.println(e);
        boolean f = string.endsWith("com");
        System.out.println(f);
    }
    public static void fun() {
        String string = "wanglong";
        String string2 = "lo";
        boolean a = string.contains(string2);
        System.out.println(a);
        // 字符串拼接 concat方法返回的时一个新的字符串
        String b = string.concat(string2);
        System.out.println(b);
    }

    public static void main(String[] args) {
        fun1();
    }
}

package string;

import org.omg.CORBA.PUBLIC_MEMBER;

/* 
* 替换 切割 获取子串 转换大小写 去空格 比较
* string replace(char oldchar, char newchar)
* String[] split(regex)
* string subString(int beginindex)
* 
    判断两个字符串相等(忽略大小写)
    把字符数组 转化为 字符串
    把字符串转化为 字符数组
    判断字符串是否为空
*/
public class demo04 {
    public static void fun() {
        String string = "wanglong";
        String a = string.replace("l", "s");
        System.out.println(a);
        String b = string.replace("long", "song");
        System.out.println(b);
    }
    public static void fun2() {
        String string = "wang,long,z,n,b";
        String[] c = string.split(",");
        for (int i = 0; i < c.length; i++) {
            System.out.println(c[i]);
        }
        //增强for 循环 用来快速打印(快速遍历)
        //冒号后是你要遍历的容器 
        //冒号前 代表的是容器中每一个元素
        for (String string2 : c) {
            //遍历时直接打印每一个元素
            System.out.println(string2);
        }
    }
   public static void fun3() {
       String string = "wanglong";
       //从索引处开始截取 返回是的时冲索引处往后的字符串
       String e = string.substring(5);
       System.out.println(e);
       //截取时留头不留尾
       String g = string.substring(0,4);
       System.out.println(g);

   }
   //转换大小写
   public static void fun4() {
       String string1 = "wanglong";
       //转大写
       String a = string1.toUpperCase();
       System.out.println(a);
       String string2 ="DINGPENG";
       String b = string2.toLowerCase();
       System.out.println(b);
   }
   //去空格 
    public static void fun5() {
        String string = "  abc def ";
        String trim = string.trim();
        System.out.println(trim);
    }
    //字符串比较
    public static void fun6() {
        //字符串相等是返回0
        //两个字符串长度相同时
        //一位一位的进行 ASCII码的比较
        //长度不相等时比较的是长度
        System.out.println((int)'A');
        String s1 = "abc";
        String s2 = "abc";
        int num = s1.compareTo(s2);
        System.out.println(num);
        char c = '万';
        System.out.println((int)c);
    }
    //判断两个字符串相等,不考虑大小写
    public static void fun7() {
        String s1 = "wanglong";
        String s2 = "wangLong";
        boolean equalsIgnoreCase = s1.equalsIgnoreCase(s2);
        System.out.println(equalsIgnoreCase);

        /*把字符数组 转化为 字符串
        把字符串转化为 字符数组
        判断字符串是否为空*/

    }
    public static void fun8() {
        char[] array = {'w','e','e','k'};
        //转字符串
        String string = new String(array);
        System.out.println(string);
        //int转字符串
        int num = 5;
        String valueOf = String.valueOf(num);
        System.out.println(valueOf);
        //字符串转化为字符数组
        String s1 = "wanglong";
        char[] charArray = s1.toCharArray();
        for(char d:charArray) {
            System.out.println(d);
        }

        String s3 = "wanglong";
        boolean empty = s3.isEmpty();
        System.out.println(empty);
        System.out.println(s3.length());
    }
    public static void main(String[] args) {
        fun8();
    }
}

//将字符串 "   abc def  " 反转
public class demo05 {
    public static void main(String[] args) {


        fun1();
    }

    /**
     * 
     */
    private static void fun1() {
        String s1  = "abc def";
        //转化为字符数组
        char[] a = s1.toCharArray();
        //
        for (int i = 0; i < a.length/2; i++) {
            char temp = a[i];
            a[i] =a[a.length-1-i];
            a[a.length-1-i]=temp;
        }
        //数组转换为字符串
        String s2 = new String(a);
        System.out.println(s2);
    }


}

/*
 * 将字符串 "   abc def   "中的前后空格去掉
 * 转化成 "abc def" 用代码实现(不使用系统方法)
 * /  
 */
public class demo06 {
    public static void main(String[] args) {
      fun2();
    }

    /**
     * 
     */
    private static void fun1() {
        String s1 = "  abc def ";
        char[] a = s1.toCharArray();
        int start = 0;
        int end =s1.length()-1;
        // 寻找从开始第一个不是空格的索引
        while(s1.charAt(start) == ' '&& start<end) {
            start++;
        }
        //寻找结束坐标
        while(a[end] == ' '&&end>start) {
            end--;
        }
        //截取新字符串
        String substring = s1.substring(start, end+1);
        System.out.println(substring);
    }
    public static void fun2() {
        String s2 = "  abc def  ";
        int a = s2.indexOf('a');
        int b = s2.indexOf('f');
        CharSequence c = s2.subSequence(a, b+1);
        System.out.println(c);
    }


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值