目录

  • 构造函数和一般函数异同
  • String获取功能的方法
  • StringBuilder类
  • 集合与数组区别

构造函数和一般函数异同

1、它们的执行时间不同:

构造函数是在创建对象的过程中执行。当对象创建完成了,构造函数就已经执行结束。

一般函数执行时间有两种情况:

  1. 如果调用其他类中的函数时:一般函数通过是在对象创建完成之后,通过对象的引用来调用。

  2. 如果调用本类中的函数时:什么时候使用,什么时候调用。

2、它们的调用次数不同:

构造函数只有在new对象的时候,会被调用,一旦对象创建完成,我们不能手动的人为去调用构造函数。

一般函数可以通过对象随意的调用,没有次数限制。

3、构造方法的写法上,方法名与它所在的类名相同。它没有返回值,所以不需要返回值类型,甚至不需要void。

String获取功能的方法

  • public int length () :返回此字符串的长度。
  • public String concat (String str) :将指定的字符串连接到该字符串的末尾。
  • public char charAt (int index) :返回指定索引处的 char值。
  • public int indexOf (String str) :返回指定子字符串第一次出现在该字符串内的索引。
  • public String substring (int beginIndex) :返回一个子字符串,从beginIndex开始截取字符串到字符串结尾。
  • public String substring (int beginIndex, int endIndex) :返回一个子字符串,从beginIndex到endIndex截取字符串。含beginIndex,不含endIndex。

转换功能的方法

  • public char[] toCharArray () :将此字符串转换为新的字符数组。

  • public byte[] getBytes () :使用平台的默认字符集将该 String编码转换为新的字节数组。

  • public String replace (CharSequence target, CharSequence replacement) :将与target匹配的字符串使用replacement字符串替换。

  • public String[] split(String regex) :将此字符串按照给定的regex(规则)拆分为字符串数组。

    说明:CharSequence 是一个接口,也是一种引用类型。作为参数类型,可以把String对象传递到方法中。可以理解为CharSequence 是String类的父接口即老子,String类即儿子类的对象可以在这里接收。

StringBuilder类

StringBuilder是个字符串的缓冲区,即它是一个容器,容器中可以装很多字符串。并且能够对其中的字符串进行各种操作。

StringBuilder类的特点:
1)是一个字符串缓冲区,其实就是一个容器;

2)长度是可变的,任意类型都可以。注意:是将任意数据都转成字符串进行存储;

3)容器对象提供很多对容器中的数据操作的功能,比如添加,删除,修改,查询;

4)所有的数据最终都会变成一个字符串;

和数组最大的不同就是数组存储完可以单独操作每一个元素,每一个元素都是独立的。

字符串缓冲区,所有存储的元素都会被转成字符串,而且变成了一个更长的字符串。

说明:

1、缓冲区:就是一个临时空间,它里面可以临时存储数据。缓冲区本身就是一个容器。
2、字符串缓冲区:它本身就是一个容器,只不过这个缓冲区最后会把里面的所有数据全部给变成字符串而已。
3、当我们需要对字符串进行数据的修改,这时不能直接使用String类,而把需要修改的字符串先存储到字符串缓冲区容器中,在容器中进行各种修改,等最后确定不再修改的时候,把里面的数据变成一个字符串,然后存储在字符串常量池中。

StringBuilder常用的方法有2个:

  • public StringBuilder append(…):添加任意类型数据的字符串形式,并返回当前对象自身。
  • public String toString():将当前StringBuilder对象转换为String对象。
  • 'public StringBuilder reverse()`:返回反转的字符序列

StringBuilder和String相互转换

StringBuilder转换为String
public String toString():通过 toString() 就可以实现把 StringBuilder 转换为 String
- String转换为StringBuilder
public StringBuilder(String s):通过构造方法就可以实现把 String 转换为 StringBuilder

集合与数组区别

1)从长度来讲:

数组:需要固定长度。

集合:长度可以改变,可以根据保存的数据进行扩容。

2)从存储内容上:

数组:可以存储基本类型数据,还可以存储引用类型的数据(比如:String和上述演示的Student类)。

集合:只能存储引用类型的数据,也就是说集合只能存储类的对象。

3)从存储类型上:

数组:只能存储相同类型的数据。

集合:可以存储不同类型的数据,集合中可以存储任意类型的引用数据类型。

常用方法和遍历

对于元素的操作,基本体现在——增、删、查。常用的方法有:

  • public boolean add(E e):将指定的元素添加到此集合的尾部。
  • public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
  • public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
  • public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。

构造方法、String类、集合相关推荐

  1. 第三次学JAVA再学不好就吃翔(part47)--String类的构造方法

    学习笔记,仅供参考 文章目录 String类 String类概述 String类的构造方法 String类 String类概述 String是java.lang包下的一个类,使用String类时不需要 ...

  2. 常用类 (六) ----- String类与字符串

    相关文章: <常用类 (一) ----- Arrays数组工具类> <常用类 (二) ----- Math类> <常用类 (三) ----- BigDecimal和Big ...

  3. Java常用类库(Object类、String类、StringBuffer类、包装类、Math类、System类)详解

    常用类库 java.lang java.lang包下放置了Java开发中常用的类和接口,所以为简化该包下类的使用,java.lang包下的类在使用时不需要导入这些类 java.lang包下常用类有: ...

  4. JAVA进阶教学之(String类的构造方法)

    试题: 问:以下程序一共创建了几个对象 public class StringTest03 {public static void main(String[] args) {String s1=new ...

  5. c++ string replace_JAVA应用程序开发之String类常用API

    [本文详细介绍了JAVA应用开发中的String类常用API,欢迎读者朋友们阅读.转发和收藏!] 1 基本概念 API ( Application Interface 应用程序接口)是类中提供的接口, ...

  6. JDK1.8源码(三)——java.lang.String 类

    String 类也是java.lang 包下的一个类,算是日常编码中最常用的一个类了,那么本篇博客就来详细的介绍 String 类. 1.String 类的定义 public final class ...

  7. Java里的字符串, String类简单介绍.

    String类在java面试中也是1个常见的问题点. 所以也是写在这里方便以后查阅了. 大家都知道c语言里是没有String 字符串这个数据类型的. 只能用字符数组的1个特殊形式来表示一个字符串, 就 ...

  8. 【String类、static、Arrays类、Math类】

    一 String类 1.1 String类概述 概述 java.lang.String 类代表字符串.Java程序中所有的字符串文字(例如"abc" )都可以被看作是实现此类的实例 ...

  9. Java基本数据类型及String类

    基本类型,或者叫做内置类型,是JAVA中不同于类的特殊类型.它们是我们编程中使用最频繁的类型.java是一种强类型语言,第一次申明变量必须说明数据类型,第一次变量赋值称为变量的初始化. 一. Java ...

最新文章

  1. java连接mysql封装代码_JDBC连接数据库方法的封装,以及查询数据方法的封装
  2. 大学计算机需要论文吗,关于大学计算机论文范文.docx
  3. 获取object的值
  4. Racket 6.11提供了稳定的细化类型和依赖函数特性
  5. Spark2.0.2+Zeppelin0.6.2 环境搭建 初探
  6. python 循环添加array_python常用的基本语句介绍
  7. drawnow aviread
  8. python基于窗体的播放器_基于Python3的终端播放器 – MellPlayer
  9. spark集成hbase与hive数据转换与代码练习
  10. 乐优商城个人笔记上-主要框架、基础知识、管理系统代码
  11. 微信小程序跳转外部链接
  12. Proteus里设置任意电源值的POWER的实现
  13. php 转义反绡线,PHP汉字转拼音
  14. a轮b轮c轮天使轮区别是什么?
  15. 跳出横向的、孤立的牵绊,真正站在新的角度来看待Web3.0
  16. HAproxy增加日志记录功能和自定义日志输出内容、格式
  17. linux压缩命令常用命令:tar,tgz,gzip,zip,rar
  18. 水晶报表(crystal reports)--java
  19. 心靜如水的時候聽音樂
  20. 洛谷——P6386 [COCI2007-2008#4] VAUVAU(java实现)

热门文章

  1. 二叉树(python实现)
  2. navicat导入access(accdb)提示invalid variant operation
  3. 查看mysql数据库引擎
  4. NC65根据sql读取缓存数据
  5. python12306买票_自己用python随意写的12306订票代码
  6. std::thread(线程)
  7. 多种方法使用GloVe
  8. 纹理特征描述及matlab实现
  9. JavaScript的本地存储和会话存储
  10. 图像分割 FCN(1):FCN网络讲解