JavaSE(八)——StringBuffer类、Arrays类、数组排序
文章目录
- 1. StringBuffer类
- 1.1 定义
- 1.2 StringBuffer类与String类的区别
- 1.3 功能
- 1.4 String类和StringBuffer类的相互转换
- 2. 数组元素的排序及索引的查找
- 3. Arrays类
- 4. 包装类
1. StringBuffer类
1.1 定义
- StringBuffer:可变的字符序列,效率低,用于在多线程操作字符串缓冲区下操作大量数据。
1.2 StringBuffer类与String类的区别
- String类:
为不可变对象,一旦被创建,就不能修改它的值;
对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。 - StringBuffer类:
是一个可变对象,当对他进行修改的时不会像String那样重新建立对象,它只能通过构造函数来建立。
StringBuffer ss = new StringBuffer();
注意:不能通过赋值符号对他进行赋值
ss = “w!”;//error
1.3 功能
添加功能
(1)append(String str):可以把任意类型数据添加到字符串缓存区里,并返回字符串缓冲区本身。
(2)insert(int offset,String str):在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身。删除功能
(1) deleteCharAt(int index):删除指定位置的字符,并返回本身。
(2)delete(int start,int end):删除从指定位置开始指定位置结束的内容,并返回本身。替换功能
replace(int start,int end,String str): 从start开始到end用str替换。反转功能
reverse(): 字符串反转截取功能
(1) substring(int start): 从指定位置截取到末尾。
(2)substring(int start,int end): 截取从指定位置开始到结束位置,包括开始位置,不包括结束位置。实例
1.4 String类和StringBuffer类的相互转换
(1)String----->StringBuffer
- 方法一:构造方法
- 方法二:append()方法
(2)StringBuffer------>String
方法一:构造方法
方法二:toString()方法
方法三:substring()方法
实例
String类中重写了equals方法,用来表示内容是否相等。
StringBuffer类则没有重写equals方法。
2. 数组元素的排序及索引的查找
数组元素的排序主要有冒泡排序、选择排序、直接插入排序、快速排序
索引的查找主要是二分查找
以一个数组工具类,完成冒泡排序、选择排序、二分查找,并测试为例
工具类:
测试类:
测试结果:
3. Arrays类
- 针对数组进行操作的工具类
- 功能
(1)转换为字符串输出功能 :Arrays.toString(arr)
(2)排序功能:Arrays.sort(arr)
(3)查找功能:查找值所对应的索引 Arrays.binarySearch(arr,int)
(4)比较功能:比较两数组中元素是否相同 Arrays.equals(arr1,arr2)
(5)复制功能:copyOf(arr,newLength) 与 copyOfRange(arr,from,to) - 实例
4. 包装类
为了对基本数据类型进行更多的操作,更方便的操作,java就针对每一种基本数据类型提供了对应的类类型。
基本类型和包装类的对应
byte——Byte
short——Short
int ——Integer
long——Long
float——Float
double ——Double
char ——Character
boolean ——Boolean自动装箱:把基本类型转换为包装类类型
自动拆箱:把包装类类型转换为基本类型String类和int类的相互转换
(1) int——>String
方法一:拼接空串
方法二:利用String类中的静态方法valueOf()
方法三:int——>Integer——>String
(2)String——>int
方法一:利用Integer类中的静态方法parseInt()
方法二:String——>Integer——>intValue()实例
JavaSE(八)——StringBuffer类、Arrays类、数组排序相关推荐
- Java基础学习笔记之:System类;Math类;Arrays类BigInteger,BigDecimal
System类 在API中System类介绍的比较简单,我们给出定义,System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作. System类不能手动创建对象,因为构造方法被priv ...
- System类+Math类+Arrays类
System类 System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作 l currentTimeMillis() 获取当前系统时间与1970年01月01日00:00点之间的毫 ...
- java的知识点17——java.util.Arrays类、多维数组
java.util.Arrays类 Arrays类包含了:排序.查找.填充.打印内容等常见的操作. 打印数组 package cn.dym08; import java.util.Arrays;pub ...
- 第三次学JAVA再学不好就吃翔(part60)--Arrays类
学习笔记,仅供参考 文章目录 Arrays类 Arrays类概述 成员方法 toString方法 sort方法 binarySearch 举个例子 Arrays类 Arrays类概述 此类包含用来操作 ...
- Java基础:ArrayList类和Arrays类
ArrayList类 ArrayList类 ArrayList类的意义 ArrayList使用步骤 ArrayList类的常用方法 ArrayList如何存储基本数据类型 Arrays类 Arrays ...
- Java 包装类和Arrays类的介绍
文章目录 包装类 Arrays类 包装类 包装类其实就是8种基本数据类型对应的引用类型. 基本数据类型 引用数据类型 byte Byte short Short int Integer long Lo ...
- Java 知识点整理-7.StringBuffer类+冒泡排序+选择排序+二分法+Arrays类+基本数据类型的包装类
1.StringBuffer类概述:线程安全的可变字符序列,一个类似于String的字符串缓冲区,但不能修改(不能像String那样用加号与其他类型数据连接),但通过某些方法调用可以改变该序列的长度和 ...
- Java Arrays类进行数组排序需要注意的事情
注:本文来自http://www.cnblogs.com/xudong-bupt/p/3168618.html,所有权利归原作者所有. 排序算法,基本的高级语言都有一些提供.C语言有qsort()函数 ...
- JavaSE学习总结(八)常用类(上)Object类==与equals方法的区别浅克隆的特点Scanner类String类String两种创建对象方式的区别String类的各种功能
JavaSE学习总结(八)常用类(上)/Object类/==与equals方法的区别/浅克隆的特点/Scanner类/String类/String两种创建对象方式的区别/String类的各种功能 常用 ...
最新文章
- NLP学习思维导图,非常的全面和清晰
- tf.keras.activations.sigmoid 激活函数 示例
- linux scp命令
- 检查列表中是否存在值的最快方法
- android onresume时view,android – 在使用ViewPager滑动时,Fragment不会调用OnResume()
- SpringMVC 中整合JSON、XML视图一
- 音视频技术开发周刊 | 136
- hazelcast入门教程_Hazelcast入门指南第5部分
- GetVersionEx 获取系统版本信息
- hbase 和 zookeeper建立连接_我对Hbase的一些理解——HMaster与Zookeeper之间的交互机制...
- springmvc项目,浏览器报404错误的问题
- 瑞芯微RK2918、全志A10和AML8726-M3方案ICS系统运行效果对比
- LeetCode 74. Search a 2D Matrix
- 学生电脑哪个牌子好_香米哪个牌子好
- [APK拆解]谷歌眼镜XE16设置新语言,当你盯着屏幕时可同步检测
- 高中分班考试如何计算机,新高一生如何应对分班考?
- 【解决方案】解除微信群二维码100人扫码限制和7天有效期!
- vscode超好玩好用的插件
- Oceans (where feet may fail)
- 牛逼,个人开发者可以申请微信支付了!
热门文章
- 我的世界java版联机不稳定_完善自己:“联机版游戏玩家”如何通过社交完善自己,这个社交跟你想的也许不一样1.0...
- 2020-06-18 CVPR2020 VL论文讨论(1) 笔记
- 计算机网络校园网建设设计摘要,计算机网络专业论文校园网建设设计.doc
- 网盘php资料,怎么搜索百度网盘里的资料(php版)
- listview显示mysql数据_C#在listview控件中显示数据库数据
- springboot 源码_springboot框架源码分享
- openfeign 负载均衡_再谈openfeign,聊聊它的源代码
- 调整亮度_【紫墨手机摄影课堂】图片调整
- e站host地址_Linux系统怎么使用命令行查询公网IP地址
- ubuntu截图软件deepin scrot