String类的常见操作

一.String类概述

1.String的值是一个对象,也是一个常量不能被改变

2.String的equals方法是比较两个字符串的内容

3.String s1=”abc”  String s2=new String(“abc”) s1有一个对象,s2有两个对象

二.String常见功能---获取和判断

1.获取

1.1 字符串中包含的字符数,也就是字符串的长度。

int length():获取长度。

1.2 根据指定位置获取位置上的某个字符

char charAt(int index)

1.3 根据字符获取该字符在字符串中的位置

Int indexOf(int ch):返回的是ch在字符串中第一次出现的位置

int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置

int indexOf(String str,int fromIndex): 从fromIndex指定位置开始,获取ch在字符串中出现的位置,如果没有找到返回-1

int lastIndexOf(String str):反向索引一个字符出现的位置

 1 public static void method_get(){
 2         String str="abcdeakpf";
 3         //打印字符串的长度
 4         sop(str.length());  //结果为5
 5         //根据索引获取字符
 6         sop(str.charAt(4)); //结果为a
 7         //根据字符获取索引
 8         sop(str.indexOf(‘a‘, 3));  //结果为5
 9         //反向索引一个字符出现的位置
10         sop(str.lastIndexOf("a"));  //结果为5
11     }

2.判断

2.1 字符串中是否包含某一个子串

boolean contains(str)

特殊之处:indexOf(str):可以索引str第一次出现的位置,如果返回-1,表示该str不在字符串中存在,所以也可以用于判断是否包含指定字符子串,而且可以获取该子串出现的位置;

2.2 字符中是否有内容

boolean isEmpty():原理就是判断length是否为0

2.3 字符串中是否以指定内容开头

boolean startsWith(str);

2.4 字符串是以指定内容结尾

boolean endsWith(str);

2.5 判断字符串内容是否相同,复写了Object类中的equals方法

boolean equals(str);

2.6 判断内容是否相同,忽略大小写

boolean equalsIgnoreCase();

1 public static void method_is(){
2         String str="ArrayDemo.java";
3         //判断文件名称是否以Array单词开头
4         sop(str.startsWith("Array"));  //结果为true
5         //判断文件名称是否是.java文件
6         sop(str.endsWith(".java"));    //结果为true
7         //判断文件名称中是否包含Demo单词
8         sop(str.contains("Demo"));     //结果为true
9     }

3.字符串常见功能---转换

3.1 将字符数组转成字符串。

构造函数:String(char[])

String(char[],offset,count):将字符数组中的一部分转成字符串

静态方法:

static String copyValueOf(char[])

static String copyValueOf(char[],offset,count)

static String valueOf(cahr[])

3.2 将字符串转成字符数组

char[] toCharArray();

3.3 将字节数组转换成字符串

String(byte[])

String(byte[],offset,count):将字节数组中的一部分转成字符串

3.4 将字符串转换成字节数组

byte[] getBytes();

3.5 将基本数据类型转换成字符串

static String valueOf(int)

static String valueOf(double)

3.6 特殊:字符串和字节数组在转换过程中是可以指定编码表的。

 1 public static void method_trans(){
 2         char[] arr={‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘};
 3         String s=new String(arr,1,3);
 4         sop("s="+s);  //结果为bcd
 5
 6         String s1="zxcvbnm";
 7         char[] chs=s1.toCharArray();
 8         for (int i = 0; i < chs.length; i++) {
 9             sop("ch="+chs[i]);
10         }
11     }

4.替换

String replace(oldchar,   newchar)

如果要替换的字符不存在,返回的还是原串

1 public static void method_replace(){
2         String s="Hello java";
3         String s1=s.replace(‘a‘, ‘n‘);
4         String s2=s.replace("java", "world");
5         sop("s="+s);          //结果为Hello java
6         sop("s1="+s1);        //结果为Hello jnvn
7         sop("s2="+s2);        //结果为Hello world
8     }

5.切割

String[] split(regex);

1 public static void method_split(){
2         String s="zhangsan,lisi,wangwu";
3         String[] attr=s.split(",");
4         for (int i = 0; i < attr.length; i++) {
5             sop(attr[i]);    //结果为zhangsan lisi wangwu
6         }
7     }

6.子串,获取字符串中的一部分

String substring(begin):从指定位置开始到结尾,如果角标不存在,会出现角标越界异常

String substring(begin,end):从起始位置开始到结束位置为止,保护起始位置不包含结束位置

1 public static void method_sub(){
2         String s="abcdef";
3         sop(s.substring(2));         //结果为cdef
4         sop(s.substring(2, 4));      //结果为cd
5     }

7.转换,去除空格,比较

7.1 将字符串转换成大写或者小写

String toUpperCase();

String toLowerCase();

7.2 将字符串两端的多个空格去除

String trim();

7.3 对两个字符串进行自然顺序的比较

int compareTo(String)

1 public static void method_7(){
2         String s="  Hello Java  ";
3         sop(s.toUpperCase());
4         sop(s.toLowerCase());
5         sop(s.trim());
6         String s1="acc";
7         String s2="aaa";
8         sop(s1.compareTo(s2));  //结果为2(两个Unicode值相减所得结果),表示s1大于s2
9     }

时间: 2024-08-15 19:20:58

String类的常见操作的相关文章

java String类-字符串常见操作

/* String常见的操作: String str="abchgthujidfg"; 1,获取 1.1字符串包含的字符数,即字符串的长度. int lenrth(): str.length();   //注意字符串获取长度的方法区别于数组获取长度的方法.数组采用格式:arr.length 1.2根据位置获取位置上的字符. char charAt(int index): str.charAt(4); 1.3根据字符获取该字符的位置. int indexOf(int ch): str.i

String类的常用操作整理

一.String类 字符与字符串操作: public char charAt(int index) 根据下标找到指定字符 public char[] toCharArray() 以字符数组的形式返回全部的字符串内容 public String(char[] value) 将全部的字符数组变成字符串 构造方法 public String(char[] value,int offset,int count) 将指定范围的字符数组变为字符串 构造方法 二.String类 字节与字符串操作 public

c++string类的相关操作

string的应用是非常典型的,下面我写了一些简单的string类的相关的一些操作,包括增删查改等一些功能和一些运算符的重载,包括他们的测试用例: #include<iostream>#include<string>#include<assert.h>using namespace std; #define CARA 3;class String{public: String(char *str = "")  :_str(new char[strle

Objective-C:NSMutableArray类的常见操作

可变数组NSMutableArray的内容大小是可变的,因此它的常见操作无非增删该查, 具体一些就是:创建.添加.删除.替换.插入.清空等等.. // //  main.m //  02-NSMutableArray // //  Created by ma c on 15/8/18. //  Copyright (c) 2015年 bjsxt. All rights reserved. // #import <Foundation/Foundation.h> int main(int arg

Java中String类(字符串操作)的10个常见问题和解决方法

注:来自百度搜索,还没有码一遍,一定要码!! 1. 字符串比较,使用 "==" 还是 equals() ?简单来说, "==" 判断两个引用的是不是同一个内存地址(同一个物理对象).而 equals 判断两个字符串的值是否相等.除非你想判断两个string引用是否同一个对象,否则应该总是使用 equals()方法.如果你了解 字符串的驻留 ( String Interning ) 则会更好地理解这个问题 2. 对于敏感信息,为何使用char[]要比String更好?

String类的常见方法的使用案例

//使用指定的字符串替换当前字符串中指定的内容 //将helloworld中的o替换为a String s="HelloWorld"; String ss=s.replace("o","a"); System.out.println("替换前:"+s); System.out.println("替换后:"+ss); //截取当前字符串中指定的内容,保留HelloWorld中0-w之间的内容,不包括w,s.i

Objective-C:NSMutableString类的常见操作

NSMutableString可变字符串的主要的操作是创建.增加.删除.插入.替换 代码操作如下: 1 // 2 // main.m 3 // 03-NSMutableString 4 // 5 // Created by ma c on 15/8/17. 6 // Copyright (c) 2015年 bjsxt. All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h> 10 11 int main(int argc,

利用RALL机制来事项String类的赋值操作

class String{ public: char *str; String(const char *ptr=NULL){ if(ptr==NULL) { str=NULL; }else{ str=(char *)malloc(strlen(ptr)+1); strcpy(str,ptr); } } String(const String &ptr) { if(ptr.str==NULL) { str=NULL; }else{ str=(char *)malloc(strlen(ptr.str

String类--字符串截取操作

运行结果:书中自有黄金屋 书中自有颜如玉 substring--方便将所要的字符串进行截取!!