Logo

郎哥编程

字符串比较和大小写转换

2019-12-10 947

字符串的比较

两个字符串对象除了判断相等外,还可以比较字符串。String类提供了compareTo()方法比较字符串的大小,compareTo()方法按照字典顺序比较两个字符串。

比较大小有三种结果:如果两个字符串相等,返回0;如果当前字符串按照字典顺序位于待比较的字符串之前返回一个负整数;如果当前字符串按照字典顺序位于待比较的字符串之前返回一个正整数。

调用compareTo()方法的语法如下:

str. compareTo(Sring s);

其中,str是当前字符串,s是待比较的字符串。

案例1:创建两个字符串对象,使用compareTo()方法比较两个字符串。

在PbaseUnit11项目unit包下创建StringCompareSample类。代码如下:

/** 
* @Title: StringCompareSample.java 
* @Package unit 
* @Description: Java基础知识课程案例
* @author 编程训练营 
* @date 
* @version V1.0 
*/ 
 
package unit;
 
/** 
* @ClassName: StringCompareSample 
* @Description: 字符串(大小比较和字符大小写转换)案例1
* @author 编程训练营 
* @date  
* 
*/
 
public class StringCompareSample {
 
    /** 
    * @Title: main 
    * @Description: Java程序入口main方法 
    * @param @param args    参数 
   
    * @return void    返回类型 
    * @throws 
    */
 
    public static void main(String[] args) {
       // 创建字符串对象
       String  szTempA = "Hello World";
       String  szTempB = "My name is XIAOMING";
       // 比较两个字符串的大小
       int ret = szTempA.compareTo(szTempB);
       if( ret == 0 )  //字符串相等
       {
           System.out.println("szTempA等于szTempB");
       }
       else if( ret > 0 )  //szTempA大于szTempB
       {
           System.out.println("szTempA大于szTempB");
       }
       else
       {
           System.out.println("szTempA小于szTempB");
       }
    }
}

程序结构分析

代码创建了两个String对象szTempA和szTempB,szTempA调用方法compareTo与szTempB按字典顺序比较,比较结果会返回三种情况,代码分别对返回的三种情况进行了处理。

程序执行效果如下图所示:

image.png                                             

String类的compareTo()方法比较两个字符串时,会从字符串的左边开始比较,每次比较一个字符,按字典顺序比较。如果第一个字符相同,就比较第二个字符,依次类推。因为szTempA的第一个字符是“H”,szTempB的第一个字符是“M”,字符“M”在字典顺序上排在字符“H”之后,因此可以说szTempA小于szTempB。

字符串的大小写转换

在编写程序时,有时需要进行字符串的大小写转换,将字符串中的字母全部转换为大写或小写。

String类提供了toLowerCase()方法和toUpperCase()方法,toLowerCase()方法将字符串的大写字母转换为小写字母,toUpperCase()方法将字符串的小写字母转换为大写字母。

调用语法如下:

str. toLowerCase();
str. toUpperCase();

案例2:创建两个字符串对象,字符串内容均包含大小写字母,分别使用toLowerCase()方法和toUpperCase()方法,将字符串转换为小写和大写。

在PbaseUnit11项目unit包下创建StringLowerUpperSample类。代码如下:

/** 
* @Title: StringLowerUpperSample.java 
* @Package unit 
* @Description: Java基础知识课程案例
* @author 编程训练营 
* @date  
* @version V1.0 
*/ 
 
package unit;
 
/** 
* @ClassName: StringLowerUpperSample 
* @Description: 字符串(大小比较和字符大小写转换)案例2
* @author 编程训练营 
* @date  
* 
*/
 
public class StringLowerUpperSample {
 
    /** 
    * @Title: main 
    * @Description: Java程序入口main方法 
    * @param @param args    参数 
   
    * @return void    返回类型 
    * @throws 
    */
 
    public static void main(String[] args) {
       // 创建字符串对象
       String  szTempA = "Hello World";
       String  szTempB = "My name is XIAOMING";
       // 将szTempA转换为大写并输出
       System.out.println(szTempA.toUpperCase());
       // 将szTempB转换为小写并输出
       System.out.println(szTempB.toLowerCase());
      
    }
 
}

程序结构分析

代码创建了两个字符串对象,两个字符串对象均包含了大小写内容。szTempA调用toUpperCase()将字符串内容转换为大写,szTempB调用toLowerCase ()将字符串内容转换为小写。

程序执行结果如下图所示:

image.png


代码在线纠错(通义千问 qwen-max)

支持粘贴多个代码文件,提交后由阿里云通义千问自动分析代码漏洞、语法错误、逻辑问题并给出修改建议。
您已解锁 AI 代码纠错功能,可正常使用!

评论区

登录 后发表评论
暂无评论