江西财经大学Java学习笔记山西农业大学信息学院

java中string 字符的比较和切分(代码详解)

2017-07-05  本文已影响59人  眼镜猫头鹰

给正在埋头学习java的同学!

package com.owlHome;

public class Comparisons {

public static void main(String[] args) {

//直接比较字符串是比较字符串的物理地址。

String s1 = "Welcome to java";

String s2 = new String("Welcome to java");

//因为之前已经创立了s1这一个物理地址,所以系统检测的时候首选的是s1,故s1 == s3.

String s3 = "Welcome to java";

String s4 = "welcome to java";

String s5 = "Welcome";

String s6 = " to";

String s7 = " java";

System.out.println("s1==s2"+ (s1 == s2));

System.out.println("s1==s3"+ (s1 == s3));

//equals 比较的是字符串的具体内容,不比较物理地址。

if(s1.equals(s2)){

System.out.println("s1 == s2");

}else{

System.out.println("s1 != s2");

}

//equalsIgnoreCase 忽略大小写进行内容的比较

if(s1.equals(s4)){

System.out.println("s1 == s4");

}else{

System.out.println("s1 != s4");

}

if(s1.equalsIgnoreCase(s4)){

System.out.println("s1 == s4");

}else{

System.out.println("s1 != s4");

}

//compareTo比较后返回的是一个整数,该数表达的含义是字符串之间字符的差别。

System.out.println(s1.compareTo(s2));

System.out.println(s1.compareTo(s4));

//regionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len);

//上述共5个参数:toffset的意思是从s1第n位开始,string other 是指进行对比的字符串,ooffset是指从s4的第n位开始,len是指比较的长度

System.out.println(s1.regionMatches(true, 0, s4, 0, 7));

System.out.println(s1.regionMatches(0, s4, 0, 7));

//startsWith 是比较前一个字符串是否由后一个数组开始的。 endsWith同理.

System.out.println(s1.startsWith(s5));

System.out.println(s1.startsWith(s6));

System.out.println(s1.endsWith(s7));

//length()得到字符串的长度

//charAt(index:int):char 返回一个字符(java中所有的index都是从零开始的)

//concat(s1:string):string.

System.out.println(s1.length());

System.out.println(s1.charAt(2));

System.out.println(s5);

System.out.println(s5.concat(s6));

System.out.println(s5.concat(s6).concat(s7));

//substring  有两种表现形式(java语言中都是左闭右开)

System.out.println(s1.substring(8, 10));

System.out.println(s1.substring(8));

//toLowerCase,toUpperCase,让字符串全变成小写全变成大写。

//trim 去掉首尾两边的空格

//注意replace的用法,replace(old,new)。

System.out.println(s1.replace('W', 's'));

//split的两种用法

//1.s1.split(" ");直接进行分割

//2.s1.split(" ",0)后面的数字代表为该字符串最多被分割成多少个字符串

System.out.println(s1.split(" "));

//注意分割后得到的是一个字符串数组类型,直接打印得到的是一个物理地址,须先进行string[]定义。

String[] tokens = s1.split(" ");

//作为foreach方法如下,打印数组内的每一个元素。

//for(元素类型 元素:元素名){打印(元素)}

for(String token:tokens){

System.out.println(token);

}

String[] takes = s1.split(" ",1);

for(String take:takes){

System.out.println(take);

}

}

}

上一篇下一篇

猜你喜欢

热点阅读