String 类的常用方法
1、求字符串的长度 lenght()
格式: 返回字符串的长度
字符串 . lenght();
例子:
package com.obge.test1; import java.util.Scanner; public class StringStu1 { public static void main(String[] args) { //获取键盘输入 Scanner scannerInput = new Scanner(System.in); //定义变量 String userName,password; System.out.println("请输入用户名:"); //接受键盘输入的字符串 用户名赋值 userName = scannerInput.next(); System.out.println("请输入密码:"); //接收键盘输入的字符串 密码赋值 password = scannerInput.next(); //判断密码长度是否小于等于 6 位 if(password.length() <= 6){ System.out.println("注册失败"); }else{ System.out.println("注册成功"); } } }
2、字符串比较
语法格式:
// 比较两个字符串的值是否相同,返回值为boolean 类型,相同返回true不同false 字符串1 . equals(字符串2);
例子:使用equals() 方法比较两个字符串的时,逐个字符比较,大小写也是在射程范围内
//比较用户名和密码是否相同 if(userName.equals("obge") && password.equals("123456")){ System.out.println("注册成功"); }else{ System.out.println("注册失败"); }
还有一个是忽略字符串的大小写比较 equalsIgnoreCase() 方法
//忽略大小写比较字符串1 和 字符串2 是否相同 字符串1 . equalsIgnoreCase(字符串2);
注意
对象和基本变量在内存中的存储是不一样的,
基本类型数据使用拷贝数据,一个数据赋值给一个或多个变量通过拷贝的,所以改变它们的赋值不会影响其他声明的Value数据
对象并不会拷贝存储,在给声明赋值时拷贝的值时堆内存地址,并不是真正的值,所以在之后改变对象内属性时,对指向同一对象的声明会有影响。
== 与 equals() 方法
== 比较的是两个字符串对象在内存中的地址也就是栈中存储的堆内存地址,判断的是是否是同一个字符串对象
equals() 方法比较的是两个字符串对象的值,也就是堆中存储的数据。
3、改变字符串方法
toLowerCase() : 将字符串中的引文字符转换为小写
toUpperCase(): 将字符串中的英文字符转换为大写
忽略大小写比较
4、字符串连接
格式:
// 将字符串2 拼接到字符串1 的后面,返回拼接后的字符串 子符串1.concat(字符串2);
例子:
5、字符串提取和查询
提取和搜索字符串常用的方法
int indexOf(int ch) : 搜索并返回第一个出现字符ch (或字符串value ) 的位置,从零开始没有返回 -1
int lastIndexOf(String value) : 搜索并返回最后一个出现字符ch(或字符串 value) 的位置,从零开始没有返回 -1
String substring(int index) : 提取从指定索引位置开始的部分字符串
String substring (int beginIndex,int endIndex) : 提取冲beginindex 和endindex 之间的字符串
String trim() ; 截取字符串前后的空格后 返回新的字符串。
6、字符串拆分 split
子符串名 . split(separator,limit); // separtor 是可选项,表示根据匹配指定的正则表达式来拆分此字符春。如果匹配不上,则结果数组之哟一个元素,就是此字符串 // limit 可选项,该值用来限制返回数组中的元素个数
例子: