文章详情

短信预约信息系统项目管理师 报名、考试、查分时间动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

关于java中的常用类——String的详细介绍

2014-10-10 02:44

关注

概述

java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如"abc")都可以被看作是实现此类的实例

String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。

特点

字符串不变:字符串的值在创建后不能被更改

String s1 = "abc"; s1 += "d";
System.out.println(s1); // "abcd"
// 内存中有"abc","abcd"两个对象,s1从指向"abc",改变指向,指向了"abcd"。

因为String对象是不可变的,所以它们可以被共享

String s1 = "abc"; 
String s2 = "abc";
// 内存中只有一个"abc"对象被创建,同时被s1和s2共享。

"abc"等效于 char[] data = {'a','b','c'}

a3d5742bd146f21df22c6c7efea8ec7.png

在线学习视频分享:java视频

使用步骤

查看类

java.lang.String 此类不需要导入。

查看构造方法

public String():初始化新创建的 String对象,以使其表示空字符序列。

public String(char[] value) : 通过当前参数中的字符数组来构造新的String。

public String(byte[] bytes) : 通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String。

构造举例,代码如下:

80eada4143fa1dbdac6a6da2fa2faec.png

常用方法

判断功能的方法

public boolean equals (Object anObject) :将此字符串与指定对象进行比较。

public boolean equalsIgnoreCase (String anotherString) : 将此字符串与指定对象进行比较,忽略大小写

方法演示,代码如下:

0343df3839c9c0ff5849aaadb853b08.png

Object 是” 对象”的意思,也是一种引用类型。作为参数类型,表示任意对象都可以传递到方法中。

获取功能的方法

public int length () 返回此字符串的长度。

public String concat (String str) : 将指定的字符串连接到该字符串的末尾。

public char charAt (int index) : 返回指定索引处的 char值。

public int indexOf (String str):该字符串第一次出现的索引位置

public String substring (int beginIndex) : 返回一个子字符串,从begin Index开始截取字符串到字符串结尾

public String substring (int beginIndex, int endIndex) : 返回一个子字符串,从beginIndex到endIndex截取字符串。含beginIndex,不含endIndex。

方法演示,代码如下:

public class String_Demo02 {
    public static void main(String[] args) {
        //创建字符串对象
        String s = "helloworld";

        // int length():获取字符串的长度,其实也就是字符个数
        // System.out.println(s.length()); 
        // System.out.println("‐‐‐‐‐‐‐‐");

        // String concat (String str):将将指定的字符串连接到该字符串的末尾. 
        // String s = "helloworld";
        String s2 = s.concat("**hello itheima");

        // char charAt(int index):获取指定索引处的字符
        // System.out.println(s.charAt(0));
        // System.out.println(s.charAt(1));
        // System.out.println("‐‐‐‐‐‐‐‐");

        // int indexOf(String str):获取str在字符串对象中第一次出现的索引,没有返回‐1
        // System.out.println(s.indexOf("l"));
        // System.out.println(s.indexOf("owo"));
        // System.out.println(s.indexOf("ak"));
        System.out.println("‐‐‐‐‐‐‐‐");

        // String substring(int start):从start开始截取字符串到字符串结尾
        // System.out.println(s.substring(0)); 
        // System.out.println(s.substring(5)); 
        // System.out.println("‐‐‐‐‐‐‐‐");

        // String substring(int start,int end):从start到end截取字符串。含start,不含end。
        // System.out.println(s.substring(0, s.length()));
        // System.out.println(s.substring(3,8));
    }
}

public char[] toCharArray () : 将此字符串转换为新的字符串数组

public byte[] getBytes () : 使用平台默认的字符集将该String编码转换为新的字节数组

public String replace (CharSequence target, CharSequence replacement) : 将与target匹配的字符串使用replacement字符串替换。

方法演示,代码如下:

public class String_Demo03 {
    public static void main(String[] args) {
        //创建字符串对象String s = "abcde";

        // char[] toCharArray():把字符串转换为字符数组
        // char[] chs = s.toCharArray();
        for (int x = 0; x < chs.length; x++) {
            System.out.println(chs[x]);
        }
        System.out.println("‐‐‐‐‐‐‐‐‐‐‐");

        // byte[] getBytes ():把字符串转换为字节数组
        // byte[] bytes = s.getBytes();
        for (int x = 0; x < bytes.length; x++) {
            System.out.println(bytes[x]);
        }
        System.out.println("‐‐‐‐‐‐‐‐‐‐‐");

        // 替换字母it为大写IT
        // String replace = str.replace("it", "IT");
        // System.out.println(replace);
        // ITcast ITheima System.out.println("‐‐‐‐‐‐‐‐‐‐‐");
    }
}

CharSequence 是一个接口,也是一种引用类型。作为参数类型,可以把String对象传递到方法中。

分割功能的方法

public String[] split(String regex)将此字符串按照给定的regex(规则)拆分为字符串数组。

方法演示,代码如下:

8292402c33eb78eddfb0d056c02e115.png

String类的练习

拼接字符串

定义一个方法,把数组{1,2,3}按照指定个格式拼接成一个字符串。格式参照如下:

public class StringTest1 {
    public static void main(String[] args) {
        //定义一个int类型的数组
        // int[] arr = {1, 2, 3};

        //调用方法
        String s = arrayToString(arr);

        //输出结果System.out.println("s:" + s);
    }

    
    public static String arrayToString(int[] arr) {
        // 创建字符串s
        String s = new String("[");
        // 遍历数组,并拼接字符串
        for (int x = 0; x < arr.length; x++) {
            if (x == arr.length - 1) {
                s = s.concat(arr[x] + "]");
            } else {
                s = s.concat(arr[x] + "#");
            }
        }
        return s;
    }

}

统计字符个数

键盘录入一个字符,统计字符串中大小写字母及数字字符个数

262b160ac600595521ba53eec1f0de4.png

相关文章教程推荐:java入门

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯