String类即字符串的相关方法

简介: String类即字符串的相关方法

前言

       众所周知,现主流的编程语言都是以英文为计算机所识别,所以当中国程序员想要创建一种,可以操纵中文的,数据类型时,String字符串类型,便有了极大的帮助。

一、字符串是什么?

       字符串,String,是一种数据类型。所有被输入法录入的文字,都可以以字符串的数据类型,被电脑所操作。

二、使用方法

1.String类

        (1)声明字符串

               语法: String  对象;

                           String 对象,对象,对象;

String a;
String a,b,c;

(2)创建字符串

                a. 直接创建字符串常量

                       示例:

                        第壹种:

String a = "天生我材必有用";
//创建的 a 对象 可以打印输出引号中的内容

          第贰种:

String b ="人生得意须尽欢", c ="莫使金樽空对月";
//创建的 b对象 c对象 可以打印输出引号中的内容

   第叁种:

String str1,str2;
str1 = "We are men";
str2 = "We are fighting";
//创建的 str1对象 str2对象 可以打印输出引号中的内容

 b.通过构造方法 实例化 字符串常量

String a = new String("考研难,难于上青天");
String b = new String(a);
//创建的 b 对象 可以打印输出引号中的内容

 c.通过字符数组 实例化 字符串常量

                       第壹种

char charArray[] ={'t','i','m','e'};
String a = new String(charArray);
/*创建的 a 对象 可以打印输出引号中的内容   
* 输出结果:time
*/

 第贰种  构造方法 public String(字节数组,获取的起始位置,获取的个数)

char charArray[] ={'时','间','就','是','金','钱'};
String a = new String(charArray,4,2);
/*创建的 a 对象 可以打印输出引号中的内容
*数组是从0开始计数 获取的个数从1开始计数
*输出结果:金钱
*/

2.字符串的相关方法

       (1)连接字符串

               a.使用“+”运算符

String a ="123"+"456";
//输出结果:123456
String b = a+"789";
//输出结果:123456789

    b.使用“+=”运算符 (变量对象的名字过长时 尤其推荐使用)

String somethingAboutString ="123";
somethingAboutString +="456";
/*创建的 somethingAboutString 对象 可以打印输出引号中的内容
* 输出结果:123456
*/

 (2)获取字符串的长度

                length()方法:获取到创建的字符串长度

String a = "0123456789";
int size = a.length();
/*创建的 size 对象 可以打印输出引号中的内容
* 输出结果:10
*/

(3)查找字符串是否存在

                indexOf(" ")方法:判断字符串中是否有" "中的字符串

                                               结果为true  返回值 为索引位置的数字 >=0

                                               结果为false 返回值 为 -1        

String object1, object2;
object1 = "8888";
object2 = "888B";
//num2中最后一位为B 不是 8
if(num1.indexOf("B")>-1){
    System.out.println("物品1编码中包含B");
}else{
    System.out.println("物品1编码中不包含B");
}
/* object1 中 8888 不含B 返回值为 -1
*  输出结果:物品1编码中不包含B
*/
if(num2.indexOf("B")>-1){
    System.out.println("物品2编码中包含B");
}else{
    System.out.println("物品2编码中不包含B");
}
/* object2 中 888B 含B 返回值为 3
*  输出结果:物品2编码中包含B
*/

(4)获取指定字符串及其位置        

               chatAt()方法:获取对应索引位置的子字符

String name = "Peter";
char ch = name.charAt(0);
/*创建的 ch 对象 可以打印输出引号中的内容
* 输出内容:P
*/1. St

  indexOf()方法:

                       a.获取第一次出现的索引

String str = "No war in the world";
int index = str.indexOf("e");
/*从0开始从左往右数,算上空格,字符串中第一个e在12
* 输出结果:12
*/1. S

     b.从指定位置开始查

String str = "We are the world";
int index =str.indexOf("e",3);
/* 从第三个位置开始索引,搜索到 are 中的 e ,此 e 在整个字符串中位于第五位
*  打印 index 的输出结果:5
*/

   c.获取最后一次出现的索引

String str = "Let it go!Let it go!";
int lastIndex = str.lastInedxOf("t");
/* 索引整个字符串中最后一个 t,在 it 中 搜索到 t, t 位于整个字符串中的第十五位 
*  打印 lastIndex ,输出结果:15
*/

    d.从指定位置往前查

String str = "Let it go!Let it go!";
int lastIndex =str.lastInedxOf("t",14);
/*从整体字符串的第十四位开始往前数,从 it 中的 i 往前数,检索到let 中的 t,处于第 12 位
* 打印 lastIndex 输出结果:12
*/

(5)获取子字符串

               substring()方法:截取字符串

                       a.从某个位置开始截取字符串

String id ="123456193108047890";
String birthday =id.substring(6);
/*substring()方法 从整体字符串第 6 位开始截取
* 打印 birthday 对象,输出结果:193108047890
*/

    b.截取整体字符串中的部分子字符串

String id ="123456193108047890";
String birthday =id.substring(6,14);
/*截取整体字符串第 6 位到第 13 位的子字符串
* 打印 birthday 对象,输出结果:19310804
*/

(6)去除字符串中的空格

               trim()方法

                       a.去除字符串左右两边的空格

String str ="    a b  c    ";
String shortStr =str.trim();
System.out.println("["+str+"]");
System.out.println("["+shortStr+"]");
/* trim()方法 去除了 str 对象 整体字符串中 左右两边的空格 赋值给了shortStr
*  打印 str 对象,     输出结果:[    a b  c    ]
*  打印 shortStr 对象,输出结果:[a b  c]
*/

   b.去除字符串中所有的空格

String str ="a b  c  d   e     f   ";
String shortStr =str.replaceAll("\\s","");
/* replaceAll()方法 去除了str对象中的 所有空格 赋值给了 shortStr 对象
*  打印 shortStr 对象 输出结果: abcdef
*/

(7) 字符串替换

               replace()方法:

String str ="馒头一文一个";
String replaceStr =str.replace("一","壹");
/* replace()方法 将整体字符串中的 一 全部替换成 壹
*  打印 str 对象 输出结果:馒头一文一个
*  打印 replaceStr 对象 输出结果:馒头壹文壹个
*/

(8)判断字符串的开始与结束

               endsWith()方法:判断字符串的结尾

String fileName ="HellowWorld.java";
boolean bool1 =fileName.endsWith(".java");
boolean bool2 =fileName.endsWith(".jpg");
/* endsWith()方法 判断整体字符串结尾 是否为某一特定 结尾 返回值 true of false
*  打印 bool1 对象 输出结果:true
*  打印 bool2 对象 输出结果:false
*/

  startsWith()方法:判断字符串的开始

String str ="新华社记者从前方发来报道...";
boolean bool1 =str.startsWith("新华社");
boolean bool2 =str.startsWith("新华书店");
/* startsWith()方法 判断整体字符串开始 是否为某一特定 开始 返回值 true of false
*  打印 bool1 对象 输出结果:true
*  打印 bool2 对象 输出结果:false
*/

(9)判断字符串是否相等

                equals()方法:

String name1 = new String("tom");
String name2 = new String("tom");
Boolean bool =name1.equals(name2);
/* equals()方法 判断 name1 与 name2 字符串内容相同 返回值为 true, 反之为 false
*  打印 bool 对象 输出结果:true
*/

  equalsIgnoreCase()方法:忽略字母大小写,对字符串进行对比

String str1 = new String("abc");
String str2 = new String("ABC");
Boolean bool = str1.equalsIgnoreCase(str2);
/* equalsIgnoreCase()方法 忽略字母大小进行对比 相同,返回值为true,不同则为 false
*  打印 bool 对象 输出结果:true
*/

(10)字母大小写的转换

               toUpperCase()方法:将字符串变成大写

               toLowerCase()方法:将字符串变成小写

String str ="abcDEF";
String strLow =str.toLowerCase();
String strUp =str.toUpperCase();
/* toLowerCase()方法 将整体字符串中 所有字母 改为小写 赋值给了 strLow 对象
*  toUpperCase()方法 将整体字符串中 所有字母 改为大写 赋值给了 strUp 对象
*  打印 strLow 对象 输出结果:abcdef
*  打印 strUp 对象  输出结果:ABCDEF
*/

11)字符串分割

               split()方法:

                       a.将字符串按照指定符号分割成数组

String str ="abc,def,ghi";
String strArray[] = str.split(",");
for(String tmp:strArray){
    System.out.println(tmp);
}
/* split()方法 指定符号 分割字符串
*  输出结果:abc
*           def
*           ghi
*/

     b.通过参数限定分割的次数

String str ="192.168.0.1";
String firstArray[] = str.split("\\.");
//上面这个是和 有数字限定分割次数的 进行对比
String secondArray[] = str.split("\\.",2);
/* split("",数字)方法 可以限定分割的次数 需要分割的次数+1=方法中填的数字
*  打印 firstArray 对象  输出结果:192 168 0 1
*  打印 secondArray 对象 输出结果:192 168.0.1
*/

总结

       以上就是今天要讲的内容,本文仅仅简单介绍了String及其方法的使用,快五千字了,大学生很容易猝死的呀,累死我了。

相关文章
|
3天前
|
索引 Python
String(字符串)
String(字符串)。
9 3
|
29天前
|
Java
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
本文深入探讨了Java中方法参数的传递机制,包括值传递和引用传递的区别,以及String类对象的不可变性。通过详细讲解和示例代码,帮助读者理解参数传递的内部原理,并掌握在实际编程中正确处理参数传递的方法。关键词:Java, 方法参数传递, 值传递, 引用传递, String不可变性。
50 1
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
|
24天前
|
NoSQL Redis
Redis 字符串(String)
10月更文挑战第16天
32 4
|
26天前
|
安全 Java 测试技术
Java零基础-StringBuffer 类详解
【10月更文挑战第9天】Java零基础教学篇,手把手实践教学!
23 2
|
28天前
|
存储 安全 C++
【C++打怪之路Lv8】-- string类
【C++打怪之路Lv8】-- string类
19 1
|
1月前
|
数据可视化 Java
让星星月亮告诉你,通过反射创建类的实例对象,并通过Unsafe theUnsafe来修改实例对象的私有的String类型的成员属性的值
本文介绍了如何使用 Unsafe 类通过反射机制修改对象的私有属性值。主要包括: 1. 获取 Unsafe 的 theUnsafe 属性:通过反射获取 Unsafe类的私有静态属性theUnsafe,并放开其访问权限,以便后续操作 2. 利用反射创建 User 类的实例对象:通过反射创建User类的实例对象,并定义预期值 3. 利用反射获取实例对象的name属性并修改:通过反射获取 User类实例对象的私有属性name,使用 Unsafe`的compareAndSwapObject方法直接在内存地址上修改属性值 核心代码展示了详细的步骤和逻辑,确保了对私有属性的修改不受 JVM 访问权限的限制
49 4
|
10天前
|
JavaScript 前端开发 开发者
|
2月前
|
Java 索引
java基础(13)String类
本文介绍了Java中String类的多种操作方法,包括字符串拼接、获取长度、去除空格、替换、截取、分割、比较和查找字符等。
38 0
java基础(13)String类
|
2月前
|
安全 Java
String类-知识回顾①
这篇文章回顾了Java中String类的相关知识点,包括`==`操作符和`equals()`方法的区别、String类对象的不可变性及其好处、String常量池的概念,以及String对象的加法操作。文章通过代码示例详细解释了这些概念,并探讨了使用String常量池时的一些行为。
String类-知识回顾①

热门文章

最新文章