黑马程序员 String类的笔记整理

---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IO开发S</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------

字符串是一个特殊包装类,其引用是存放在栈里的,而对象内容必须根据创建方式不同定(常量池和堆).有的是编译期就已经创建好,存放在字符串常 量池中,而有的是运行时才被创建.使用new关键字,存放在堆中。

这篇博客就整理一下看视频时做的笔记吧。

String对象已被final修饰,每次声明均为一个String类型的具体实例,而且不能被改变。注意是字符的值不能被改变,但是引用可以换。还有的就是本文开头的那一段了。

String常见的操作:

1,获取:

1、1 int length()  获取长度

1、2 char charAt(int index)  获取指定位上的某个字符

1、3 根据字符获取该字符在字符串中的位置(第一次出现)

int indexOf(int ch)不存在ch返回-1,可以用于判断字符是否存在

int indexOf(int ch,int index)从index位置开始查找

int indexOf(String str)找字符串

int indexOf(String str ,int index)

int lastIndexOf(int ch) 从最后面向前查找

2,判断:

2、1是否包含某一字符串:  boolean contains(String str)

2、2是否有内容: boolean isEmpty()(长度是否为0)

2、3是否以指定内容开头:boolean startsWith(str)

2、4是否已指定内容结尾: boolean endsWith(str)

2、5内容是否相同:boolean equals(str)

2、6内容是否相同:boolean equalsIgnoreCase(str)

3,转换:

3、1将字符数组转成字符串: String(char [])构造函数

static String copyValueOf(char[]) 

static String copyValueOf(char[],int offset ,int count) 

static String valueOf(char[])

3、2将字符串转换成字符数组 :char[] toCharArray();

3、3将字节数组转换成字符串: String (byte[])构造函数

String (byte [],int offset ,int count) 从指定数组中指定位置取出相应字节变成字符串

3、4将字符串转换成字节数组:byte[] getBytes();

3、5将基本数据类型转换成字符串: static String valueOf(int/double)

4,替换:String replace(oldchar,newchar)得到的是一个新字符,引用改变

5,切割 String [] split (regex) 会切出字符串

6,获得子串: String subString(begin) 从指定位置到结尾

String subString(begin,end) 包含头,不包含尾(end-1)

7,转换,去除空格,比较:

7、1转换大写或小写 :String toUpperCase();变成大写 。String toLowerCase();变成小写

7、2将字符串两端的空格删去:String trim();

7、3对两个字符串进行自然顺序比较 : int compareTo(String str

由于String类型的值不可改变,所以用StringBuffer和StringBuilder比较多,字符缓冲区,是一个容器。这个容器的特点是:1长度可以变化;2可以直接操作多个数据类型;3最终会通过toString变成字符串。

下面整理一下StringBuffer的一些操作:

1,存储: StringBuffer append() 将制定数据作为参数,添加到已有数据结尾处,返回原来的那个容器

StringBuffer insert(index ,digit) 将数据插入到指定位置,返回原有容器

2,删除: StringBuffer delete(start ,end)包含头不包含尾;返回原有容器

StringBuffer deleteCharAt(index)删除指定位置的字符

delete(0,sb.length())此操作可以清空缓冲区

3,获取:char charAt(int index)返回字符中的单个字符

char indexOf(String str)查找字符串第一次出现的位置

int lastIndexOf(String str

int length()

String subString(int start,int end) 返回的是字符串,而不是容器

void getChars(int srcBegin,int srcEnd,char[] dst ,int dstBgein)将缓冲区中指定的数据存储到指定数组中的指定位置

4,修改:StringBuffer replace(start,end,str) 包含头,不包含尾,返回一个容器

void setCharAt(int index,char ch) 返回为空

5,反转:StringBuffer reverse()


StringBuilder是StringBuffer的不同步形式,可以做它的不同步替换



---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IO开发S</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的别。由于各物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分问题:判断图像中的目标属于哪个别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分 基于深度学习的目标检测算法主要分为两大: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值