• java(12)字符串


    一、字符串概述

      1.1如何使用字符串

        1)定义并初始化字符串

        2)使用字符串,对字符串进行一些处理

      1.2字符串的长度

      语法:

          字符串1.length();  -->返回字符串1的长度

     1 public class Practice1 {
     2     public static void main(String[] args) {
     3         Scanner input = new Scanner(System.in);
     4         String uname,pwd;
     5         System.out.println("请输入用户名:");
     6         uname = input.next();
     7         System.out.println("请输入密码:");
     8         pwd=input.next();
     9         if(pwd.length()>=6){  //判断密码长度
    10             System.out.println("注册成功");
    11         }else{
    12             System.out.println("密码长度不能小于6位");
    13         }
    14     }
    15 }
    示例1

    运行结果:如图:     

         1.3 字符串的比较

      1)语法:

          字符串1.equals(字符串2);

     1 public class Practice2 {
     2     public static void main(String[] args) {
     3         Scanner input = new Scanner(System.in);
     4         String uname,pwd;
     5         System.out.println("请输入用户名:");
     6         uname = input.next();
     7         System.out.println("请输入密码:");
     8         pwd=input.next();
     9         if(uname.equals("tom")&&pwd.equals("1234567")){  
    10             System.out.println("登入成功");
    11         }else{
    12             System.out.println("用户名或密码不匹配,登录失败");
    13         }
    14     }
    15 }
    示例2

    运行结果:如图:    

    疑问:为什么不能使用双等号(==)来判断两个字符串是否相同呢?

      1.在Java中,双等号和equals()方法虽都应于两个字符串,但所判断的内容是有差别的

      2.双等号判断的是两个字符串对象在内存中的首地址是否相等,即判断是否是同一个字符串对象

      3.equals()判断的是两个字符串对象的值是否相等

     1 public class Practice3{
     2     public static void main(String[] args){
     3         String character=new String("我爱你");
     4         String character1=new String("我爱你");
     5         if(character.equals(character1)){
     6             System.out.println("两个字符串值相同");
     7         }else{
     8             System.out.println("两个字符串值不相同");
     9         }
    10         if(character==character1){
    11             System.out.println("两个字符串相同");
    12         }else{
    13             System.out.println("两个字符串不相同");
    14         }
    15         }
    16 }
    示例3

    运行结果:如图:

      2)语法:

          字符串1.equalsIgnoreCase(字符串2);

        忽略大小写比肩字符串1和字符串2,如果都相同,则返回true,否则返回false

      3)语法:

                字符串.toLowerCase()——小写

                字符串.toUpperCase()——大写

     二、复杂点的字符串处理

    2.1 字符串连接的方式

                方式1:使用+号

                方式2:字符串变量.concat(要连接的字符串);

    2.2 字符串提取的常用方法

                    同一个方法,有多种表现形式——方法重载

        1 indexOf(字符或字符串),查找字符或字符串首次出现的位置;

          返回一个数字,-1表示没有,返回是>=0的数字,表示存在

        2 lastIndexOf(字符或字符串),查找字符或字符串最后一次出现的位置;

          返回一个数字,-1表示没有,返回是>=0的数字,表示存在

        3 substring()方法

          1. substring(提取位置):表示从提取位置开始一直提取到字符串的末尾结束

          2. substring(开始位置,结束位置):表示提取从开始位置,到结束位置-1的子字符串[结束位置大于整个字符串的长度,出现异常]

        4 trim()——去掉字符串左右两边的空格

        5 字符串拆分——split()返回字符串数组

    2.3、StringBuffer类

      1、StringBuffer和String的区别?

              String空间或长度是固定的,StringBuffer空间可变                                                                      

              String效率低于StringBuffer类

        2、使用StringBuffer类的步骤?

           步骤1:先创建对象

              StringBuffer 对象名=new StringBuffer();

          StringBuffer 对象名=new StringBuffer(默认值);

           步骤2:向对象中追加或插入值

              StringBuffer对象名.append(追加的值);//可以追加任何值(char,int等)

           StringBuffer对象名.insert(要插入的位置,插入的值)

  • 相关阅读:
    linux 文件时间
    linux命令学习 touch
    linux命令学习 cp
    Linux命令学习 mv
    SpringMVC mvc详解
    JDBC原生态代码
    java中静态方法中调用非静态方法的详解
    Spring技术详解
    Spring中的 BeanFactory和 ApplicationContext的区别与解释
    java多线程编程相关技术
  • 原文地址:https://www.cnblogs.com/-chaoming/p/6971000.html
Copyright © 2020-2023  润新知