字符串连接
在输出多个结果时,可以将多个结果连接在一起输出,解决代码的囤积,拼接处跟容易好读的字符串类型。
- +:加法运算可以将任何数据类型拼接成字符串,但其中必须有一个字符串类型(可以是空字符串),最好放在开头,不然碰到多个相同的数据类型,则会相加。
- concat(String str):只能拼接字符串类型,
public class dome2{
public static void main(String[] args) {
String str="三国";
int i=99;
float f=55.0f;
// 利用+连接的字符串
System.out.println(i+f+"i和f相加了");
System.out.println("i和f不相加"+i+f);
//利用concat方法连连接
System.out.println(str.concat("、水浒传").concat("、红楼梦").concat("、西游记"));
//合起来一起使用
System.out.println(str.concat("、水浒传")+"、红楼梦".concat("、西游记"));
}
}
结果
154.0i和f相加了
i和f不相加9955.0
三国、水浒传、红楼梦、西游记
三国、水浒传、红楼梦、西游记
字符串长度
- 获取字符串长度就用length方法
字符串.length();
例1
输入银行卡密码,密码只能是4-6位数,不能太长太短,编写Java程序
public class dome2{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
boolean b=true;
while(b) {
System.out.println("请输入密码");
String input=sc.next();
if(input.length()<7&&input.length()>=4) {
System.out.println("密码输入正确");
b=false;
}else if(input.length()>=7) {
System.out.println("密码过长,请重新输入");
}else {
System.out.println("密码太短,请重新输入");
}
}
}
}
大小写转换
- toLowerCase();将字符串的所有字符换成小写,非字符不受影响。
- toUpperCase() ;将字符串的所有字符换成大写,非字符不受影响。
public class dome2{
public static void main(String[] args) {
String str="Hello World!";
System.out.println(str.toLowerCase());
System.out.println(str.toUpperCase());
}
}
结果
hello world!
HELLO WORLD!
字符串去空格
- 字符串一般空格没什么用处,但有时在参与运算时会多出空格,这样就影响结果,并且空格字符也算一个字符,有时在字符比较时,字符什么都一样,就是多了个空格导致出错。
- 这里介绍的时trim()方法,但他只能去掉首尾==的空格符
public class dome2{
public static void main(String[] args) {
String str=" H ell o Wo r ld! ";
System.out.println(str.length());
System.out.println(str.trim().length());
}
}
结果
23
16
子字符串的提取
在操作字符串时,常常也会进行筛选,把不需要的和有用的提取出来,在String中也提供了两种方法。
- substring(int beginIndex);提取从索引处到结尾的字符串,beginIndex是需要提取的字符串开始,返回新提取出来的字符串。
- substring(int beginIndex,int endIndex) ;提取beginIndex(开始索引)到endIndex(结束索引)的字符,但不包括结束索引处的字符,返回的是提取出来的新字符串。
- substring()是按字符截取,而不是字符。
- 字符串的截取是从首字符索引为0开始的,结束字符是以首字符为1结束的。
public class dome2{
public static void main(String[] args) {
String str="hello woeld!";
System.out.println(str.substring(4));
System.out.println(str.substring(3,7));
}
}
结果
o woeld!
lo w