Java String类的常用方法使用方法

String常用类使用方法

String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。String类对象创建后不能修改,StringBuffer & StringBuilder 类。这时我们会问,为什么我们String变量赋值不就是改变了吗?其实不是的,赋值后将会生成新的对像来存放新的内容,原先的对象依旧在内存中,但是s不在指向它,那么这个对象就会成为垃圾内存,在某一个特定的时刻有Java虚拟机回收。包含在一对双引号之间。



String字符串变量的创建:

声明: String 变量名;

String str;

声明并初始化:

String 变量名=“初始值”;

String str = "淡忘_Java博客";

1、int length();

语法:字符串变量名.length();
返回值为 int 类型。得到一个字符串的字符个数(中、英、空格、转义字符皆为字符,计入长度)

代码如下(示例):

String a="淡忘_Java博客";
        int l = a.length();
        System.out.println(l);
输出的结果为9

2、char charAt(值);

语法 :字符串名.charAt(值);  返回值为 char 类型。从字符串中取出指定位置的字符

代码如下(示例):

String str="淡忘_Java";
        char c = str.charAt(3);
        System.out.println("指定字符为:" + c);
运行结果:指定字符为:J

3、char toCharArray();

语法 :字符串名.toCharArray();返回值为 char 数组类型。将字符串变成一个字符数组

代码如下(示例):

String str="淡忘了"char c[] = str.toCharArray(); 
for (int i = 0; i < c.length; i++)
System.out.println("转为数组输出:" + c[i]);

 运行结果:
	转为数组输出:淡
	转为数组输出:忘
	转为数组输出:

4、 int indexOf(“字符”)

语法 :字符串名.indexOf(“字符”);字符串名.indexOf(“字符”,值);查找一个指定的字符串是否存在,返回的是字符串的位置,如果不存在,则返回-1 。
  in lastIndexOf(“字符”) 得到指定内容最后一次出现的下标
代码如下(示例):

String str = "I am a good student";
        int a = str.indexOf('a');//a = 2
        int b = str.indexOf("good");//b = 7
        int c = str.indexOf("w", 2);//c = -1
        int d = str.lastIndexOf("a");//d = 5
        int e = str.lastIndexOf("a",3);//e = 2
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
        System.out.println(d);
        System.out.println(e);

 运行结果:
	转为数组输出:2
	转为数组输出:7
	转为数组输出:-1
	转为数组输出:5
	转为数组输出:2

5、toUpperCase(); toLowerCase();字符串大小写的转换

String str="hello world";
System.out.println("将字符串转大写为:" + str.toUpperCase());
System.out.println("将字符串转换成小写为:" + str.toUpperCase().toLowerCase());

运算结果:

将字符串转大写为:HELLO WORLD
将字符串转换成小写为:hello world

6、String[] split(“字符”)

根据给定的正则表达式的匹配来拆分此字符串。形成一个新的String数组。

String str = "boo:and:foo";
String[] arr1 = str.split(":");
String[] arr2 = str.split("o");
运行结果:
  arr1  //{ "boo", "and", "foo" }
  arr2  //{ "b", "", ":and:f" }

7、boolean equals(Object anObject)

语法 :字符串变量名.equals(字符串变量名);  返回值为布尔类型。所以这里用 if 演示。比较两个字符串是否相等,返回布尔值

String str = "hello";
        String str1 = "world";
        if (str.equals(str1)) {
            System.out.println("这俩字符串值相等");
        } else {
            System.out.println("这俩字符串值不相等");
        }
  运行结果:
    这俩字符串值不相等

8、trim();去掉字符串左右空格  replace(char oldChar,char newChar);新字符替换旧字符,也可以达到去空格的效果一种。

String str = "      淡忘_Java博客         ";  
System.out.println("去掉左右空格后:" + str.trim());
 
运行结果:
  去掉左右空格后:淡忘_Java博客

第二种:
String str = "       淡忘_Java博客         ";  
System.out.println("去掉左右空格后:" + str.replace(" ","")); 

运行结果:
  去掉左右空格后:淡忘_Java博客

9、String substring(int beginIndex,int endIndex)  截取字符串

String str = "123淡忘_Java博客456";
        System.out.println("截取后的字符为:" + str.substring(0, 3));// 截取0-3个位置的内容   不含3
        System.out.println("截取后字符为:" + str.substring(2));// 从第3个位置开始截取    含2
        
 运行结果:
   截取后的字符为:123
   截取后字符为:3淡忘_Java博客456

10、boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的值是否一模一样,返回一个布尔值

String str = "123淡忘_Java博客456";
        System.out.println("截取后的字符为:" + str.substring(0, 3));// 截取0-3个位置的内容   不含3
        System.out.println("截取后字符为:" + str.substring(2));// 从第3个位置开始截取    含2
        
 运行结果:
   截取后的字符为:123
   截取后字符为:3淡忘_Java博客456

11、boolean contains(String) 判断一个字符串里面是否包含指定的内容,返回一个布尔值

       String str = "HELLO WORLd";
        String str1 = "WO";
        if (str.contains(str1)) {
            System.out.println("str内容中存在WO");
        } else {
            System.out.println("抱歉没找着");
        }
运行结果:
  str内容中存在WO

12、boolean startsWith(String)  测试此字符串是否以指定的前缀开始。返回一个布尔值

       String str = "HELLO WORLd";
        String str1 = "HE";
        if (str.startsWith(str1)) {
            System.out.println("str内容中存在HE前缀开头");
        } else {
            System.out.println("抱歉没找着");
        }
运行结果:
  str内容中存在HE前缀开头

13.boolean endsWith(String)  测试此字符串是否以指定的后缀结束。返回一个布尔值

String str = "淡忘博客";
        String str1 = "博客";
        if (str.endsWith(str1)) {
            System.out.println("str内容中存在\'博客\'后缀结束");
        } else {
            System.out.println("抱歉没找着");
        }
 运行结果:
  str内容中存在'博客'后缀结束

14、上面提到了replace方法,接下继续补充一下 String replaceAll(String,String) 将某个内容全部替换成指定内容,   String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容

String str = ",,,,,,淡忘博客,,,,, ";
        System.out.println("改变后:" + str.replaceAll(",", "a"));
  运行结果:改变后:aaaaaa淡忘博客aaaaa 
  String str = ",,,,,,淡忘博客6不,,,,, ";
        System.out.println("改变后:" + str.replaceFirst("6不", "很6"));
   运行结果:改变后:,,,,,,淡忘博客很6,,,,, 

总结

大神勿喷,有什么错的希望给我留言,我会改正

智能网联汽车的安全员高级考试涉及多个方面的专业知识,包括但不限于自动驾驶技术原理、车辆传感器融合、网络安全防护以及法律法规等内容。以下是针对该主题的一些核心知识解析: ### 关于智能网联车安全员高级考试的核心内容 #### 1. 自动驾驶分级标准 国际自动机工程师学会(SAE International)定义了六个级别的自动驾驶等级,从L0到L5[^1]。其中,L3及以上级别需要安全员具备更高的应急处理能力。 #### 2. 车辆感知系统的组成与功能 智能网联车通常配备多种传感器,如激光雷达、毫米波雷达、摄像头和超声波传感器等。这些设备协同工作以实现环境感知、障碍物检测等功能[^2]。 #### 3. 数据通信与网络安全 智能网联车依赖V2X(Vehicle-to-Everything)技术进行数据交换,在此过程中需防范潜在的网络攻击风险,例如中间人攻击或恶意软件入侵[^3]。 #### 4. 法律法规要求 不同国家和地区对于无人驾驶测试及运营有着严格的规定,考生应熟悉当地交通法典中有关自动化驾驶部分的具体条款[^4]。 ```python # 示例代码:模拟简单决策逻辑 def decide_action(sensor_data): if sensor_data['obstacle'] and not sensor_data['emergency']: return 'slow_down' elif sensor_data['pedestrian_crossing']: return 'stop_and_yield' else: return 'continue_driving' example_input = {'obstacle': True, 'emergency': False, 'pedestrian_crossing': False} action = decide_action(example_input) print(f"Action to take: {action}") ``` 需要注意的是,“同学”作为特定平台上的学习资源名称,并不提供官方认证的标准答案集;建议通过正规渠道获取教材并参加培训课程来准备此类资格认证考试
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值