字符串复习(一)

Java中的数据类型

基本数据类型(8种)
byte,short,int,long,float,double,char
引用类型
class类型,interface类型,Array类型
String不是基本的数据类型,是final修饰的java类,是引用类型。
在这里插入图片描述

==和.equals的区别

==:

public class A {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String a = "小王";
        String b = "小王";
        String c = "小张";
        String d = input.next();
        System.out.println(a==b);
        System.out.println(a==c);
        System.out.println(a==d);
    }
}

设断点调试结果
在这里插入图片描述
分析a,b结果为true和a,d结果为false的原因
在这里插入图片描述
== 比较的是栈中的值(地址)
所以a,b比较的是两个栈中的值(1 == 1),d处new了一个对象,栈的值发生改变(1==2)

.equals

设断点源码分析

public class B {
    public static void main(String[] args) {
        String a = new String("字符串");
        String b = new String("字符串");
        System.out.println(a.equals(b));
    }
}

在这里插入图片描述
先比较地址是否相同

if (this == anObject) {
            return true;
        }

再判断传入是否是String类型,否的话返回false,是的话数组的每个元素依次比较

f (anObject instanceof String) {
            String anotherString = (String)anObject;
            int n = value.length;
            if (n == anotherString.value.length) {
                char v1[] = value;
                char v2[] = anotherString.value;
                int i = 0;
                while (n-- != 0) {
                    if (v1[i] != v2[i])
                        return false;
                    i++;
                }
                return true;
            }
        }
        return false;
    }

String字符串的原理

在这里插入图片描述
跟踪进行源码分析
在这里插入图片描述

在这里插入图片描述
可知字符串的原理就是字符数组

字符串常用的方法

1.常见的获取功能(详情见api1.8)

java常见方法函数的实例,
其中包括:
1、字符串比较compareTo、compareToIgnoreCase
2、字符串查找indexOf、lastIndexOf
3、删除字符串
4、字符串替代replace、replaceAll
5、字符串反转reverse
6、字符串转变大小写toUpperCase、toLowerCase
7、去掉首位空格trim
8、是否包含某字符/字符串contains
9、返回指定位置字符charAt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值