当前位置:   article > 正文

Java_String&ArrayList_java 判断某个对象是arraylist

java 判断某个对象是arraylist

Java_String&ArrayList

String

String类概述

String 概述

  • java.lang.String 类代表字符串,String类定义的变量可以用于指向字符串对象,然后操作该字符串。
  • Java 程序中的所有字符串文字(例如“abc”)都为此类的对象。
String name = "小黑";
  • 1

String类的特点详解

  • String其实常被称为不可变字符串类型,它的对象在创建后不能被更改。

字符串对象存在哪里?

  • “ ” 方式给出的字符串对象,在字符串常量池中存储。

String类创建对象的两种方式

  • 方式一:直接使用 “ ” 定义。(推荐方式)

    String name = "hello";

  • 方式二:通过String类的构造器创建对象。

构造器说明
public String()创建一个空白字符串对象,不含有任何内容
public String(String original)根据传入的字符串内容,来创建字符串对象
public String(char[] chs)根据字符数组的内容,来创建字符串对象
public String(byte[] chs)根据字节数组的内容,来创建字符串对象

有何区别

  • 以“ ”方式给出的字符串对象,在字符串常量池中存储,而且相同内容只会在其中存储一份。
  • 通过构造器new对象,每new一次都会产生一个新对象,放在堆内存中。
String s1 = "abc";

String s2 = "abc";

System.out.println(s1 == s2); // true

char[] chs = {'a', 'b', 'c'};

String s3 = new String(chs);

String s4 = new String(chs);

System.out.println(s3 == s4); // false
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

在这里插入图片描述

在这里插入图片描述

String常见面试题

public class Test2 {
    public static void main(String[] args) {
        String s2 = new String("abc");//此处创建了两个对象
        String s1 = "abc";
        System.out.println(s1 == s2);//false
	} 
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述

public class Test3 {
    public static void main(String[] args) {
        String s1 = "abc";
        String s2 = "ab";
        String s3 = s2 + "c";
        System.out.println(s1 == s3);//false
	} 
}
public class Test4 {
    public static void main(String[] args) {
        String s1 = "abc";
        String s2 = "a" + "b" + "c";
        System.out.println(s1 == s2);//true
        //因为java存在编译优化机制,"a" + "b" + "c"在编译时会转成"abc"
    } 
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

String类常用API

字符串内容比较
  • 推荐使用String类提供的“equals”比较:只关心内容一样即可
方法名说明
public boolean equals (Object anObject)将此字符串与指定对象进行比较。只关心字符内容是否一致!
public boolean equalsIgnoreCase (String anotherString)将此字符串与指定对象进行比较,忽略大小写比较字符串。只关心字符内容是否一致!
遍历,替换,截取,分割操作
方法名说明
public int length()返回此字符串的长度
public char charAt(int index)获取某个索引位置处的字符
public char[] toCharArray()将当前字符串转换成字符数组返回
public String substring(int beginIndex, int endIndex)根据开始和结束索引进行截取,得到新的字符串(包前不包后)
public String substring(int beginIndex)从传入的索引处截取,截取到末尾,得到新的字符串
public String replace(CharSequence target, CharSequence replacement)使用新值,将字符串中的旧值替换,得到新的字符串
public String[] split(String regex)根据传入的规则切割字符串,得到字符串数组返回

ArrayList

集合概述

集合与数组类似,也是一种容器,用于存储数据。

数组的特点:

  • 数组定义完成并启动后,类型确定、长度确定。
  • 问题:在个数不能确定,需要进行增删数据的操作时,数组不合适。

集合的特点:

  • 集合大小不固定,声明后可以动态变化,类型也可以选择不固定。
  • 集合非常适合做元素个数不确定,且要进行增删操作的业务场景。
  • 集合还提供了许多丰富、好用的方法,而数组的功能很单一。

ArrayList集合快速入门

ArrayList集合
  • ArrayList是集合的一种,它支持索引。
ArrayList集合的对象获取
构造器说明
public ArrayList()创建一个空的集合对象
ArrayList集合添加元素的方法
方法名说明
public boolean add(E e)将指定的元素追加到此集合的末尾
public void add(int index,E element)在此集合中的指定位置插入指定的元素

ArrayList对于泛型的支持

泛型概述:

  • ArrayList:其实就是一个泛型类,可以在编译阶段约束集合对象只能操作某种数据类型。

举例:

  • ArrayList :此集合只能操作字符串类型的元素。
  • ArrayList:此集合只能操作整数类型的元素。

==注意:==集合中只能存储引用类型,不支持基本数据类型。

ArrayList常用API、遍历

方法名称说明
public E get(int index)返回指定索引处的元素
public int size()返回集合中的元素的个数
public E remove(int index)删除指定索引处的元素,返回被删除的元素
public boolean remove(Object o)删除指定的元素,返回删除是否成功
public E set(int index, E element)修改指定索引处的元素,返回被修改的元素
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/766451
推荐阅读
相关标签
  

闽ICP备14008679号