2019-10-21-23:30:24


ArrayList类[集合]

  What:java.util.ArrayList是大小可变的数组的实现,存储在内的数据称为元元素,此类提供一些方法来操作内部存储的元素

  Why:ArrayList大小可变,所以AttayList中可不断添加元素,其大小也自动增长。

    1.数组的长度不可以发生改变,但是ArrayList集合的长度是可以发生改变的

  How:ArrayList<E> 对象名 = new ArrayList<E>();

    <E>叫做泛型,表示一种指定的数据类型,可以使用一种引用数据(不能是基本类型来替换)类型将其替换,右侧的E可以省略不写

  注意事项:

    1.ArrayList集合来说,直接打印得到的是内容,不是地址值,而数组打印得到的是地址值

    2.如果内容为空,打印得到的是中括号,[]

  常用方法

    1.public boolean add(E e); 向集合当中添加元素,参数的类型和泛型一致。返回值代表添加是否成功。

    备注:对于Arraylist集合来说,add添加动作一定是成功的,所以返回值可用可不用。但是对于其他集合(今后学习)来说,add添加动作不一定成功.

    2.public E remove(int index): 从集合当中册除元素,参数是索引编号,返回值就是被删除掉的元素

    3.public E get(int index), 从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素。

    4.public int size():获取集合的尺寸长度,返回值是集合中包含的元素个数。

package demoarraylist;

import java.util.ArrayList;

public class ArrayListPra01 {
public static void main(String[] args) {
//创建一个ArrayList集合对象
ArrayList<String> arrayList = new ArrayList<>();
//先打印空集合
System.out.println(arrayList);//[]
//向集合中添加元素
Boolean success = arrayList.add("盖伦");
System.out.println(arrayList);//[盖伦]
System.out.println("添加的动作是否成功:"+success);//添加的动作是否成功:true
arrayList.add("皇子");
arrayList.add("德邦");
arrayList.add("剑圣");
System.out.println(arrayList);//打印添加的元素 //从集合中获取元素
System.out.println(arrayList.get(0));//盖伦
System.out.println(arrayList.get(1));//皇子
System.out.println(arrayList.get(2));//德邦
System.out.println(arrayList.get(3));//剑圣 //删除集合中的元素
String name = arrayList.remove(3);
System.out.println("被删除的是:"+name);//被删除的是:剑圣
System.out.println(arrayList);//[盖伦, 皇子, 德邦] //获取集合的长度,也叫元素个数
int size = arrayList.size();
System.out.println("集合的长度是:"+size);//集合的长度是:3
}
}

字符串:

  What:java.lang.String类代表字符串.程序中所有的双引号字符串,都是String类的对象

  字符串的特点:  

    1.字符串的内容永不可变。[重点]

    2.正是因为字符串不可改变,所以字符串是可以共享使用的。

    3.字符串效果上相当于是char[ ]字符数组,但是底层原理是byte[ ]字节数组。

  创建字符串的常见3+1种方式。

  三种构造方法:

    public String(): 创建一个空白字符串,不含有任何内容。

    public String(char[] array): 根据字符数组的内容,来创建对应的字符串。

    public String(byte[] array): 根据字节数组的内容,来创建对应的字符串。

  一种直接创建:String str ="Hello"; //右边直接用双引号

  注意:直接写上双引号,就是字符串对象。

package demostring;

public class StringPra01 {
public static void main(String[] args) {
//使用空参构造
String str1 = new String(); //小括号留空,说明字符串什么内容都没有。
System. out . println("第1个字符串:"+ str1);
//根据字符数组创建字符串
char[] charArray = { 'A', 'B','C' };
String str2 = new String( charArray);
System. out . println("第2个字符串:"+ str2);//第2个字符串:ABC
//根据字节数组创建字符串
byte[] byteArray = { 97, 98,99 };
String str3 = new String(byteArray);
System.out.println("第3个字符串:"+ str3);//第3个字符串:abc
//直接创建
String str4 = "Hello";
System.out.println("第四个字符串:"+str4);//第四个字符串:Hello
}
}

字符串常量池:

字符串的比较方法:

  ==是进行对象的地址值比较,如果确实需要字符串的内容比较,可以使用两个方法

  两个方法:
    public booleon equols(object obj),参数可以是任何对象,只有参数是一个字符串并且内容相同的才会给true,否则返回false.

    public boolean equalsIgnoreCase(String str), 忽略大小写,进行内容比较。
  注意事项,
    1.任何对象都能用0bject进行接收。
    2. equals方法具有对称性,也就是a. equals(b)和b. equals(a)效果一样。
    3.如果比较双方一个常量一个变量,推荐把常量字符串写在前面。
    推荐: "abc".equats(str) ,不推荐str.equals( "abc ")
字符串的获取方法

  String当中与获取相关的常用方法有:
    public int length(),获取字符串当中含有的字符个数,拿到字符串长度。
    public String concat(String str): 将当前字符串和参数字符串拼接成为返回值新的字符串。
    public char charAt(int index), 获取指定索引位置的单个字符。(素引从0开始)
    public int indexof(String str): 查找参数字符串在本字符串当中首次出现的索引位置,如果没有返回-1值。

字符串的截取方法:

  public string substring(int index); 截取从参数位置一直到字符串末尾,返回新字符串。
  public String substring(int begin, int end); 截取从begin开始,一直到end结束,中间的字符串。
  备注。[begin,end), 包含左边,不包含右边。

字符串的转换:

  public char[] toCharArray(); 将当前字符串拆分成为字符数组作为返回值。
  public byte[] getBytes():获得当前字符串底层的字节数组。
  public String replace(CharSequence oldString, CharSequence newString);
  将所有出现的老字符串替换成为新的字符串,返回替换之后的结果新字符串。
  备注: CharSequence意思就是 说可以接受字符串类型。

字符串的分隔:

  public String[] split(String regex): 按照参数的规则,将字符串切分成为若干部分。
  注意事项:
  split方法的参数其实是一个 “正则表达式”,今后学习。
  今天要注意:如果按照英文句点“。进行切分。必须写"\\." (两个反斜杠)


有点晚了,后面的代码明天再补回去

Java之路---Day07的更多相关文章

  1. Java之路——名词解释(一)

    一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...

  2. Java之路——敬JAVA初学者(作者:MoMo)

    作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊!    要离开学校了,还是想留 ...

  3. Java之路——环境配置与编译运行

    本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解 ...

  4. Java之路 ——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

  5. 2017-2018-1 JAVA实验站 冲刺 day07

    2017-2018-1 JAVA实验站 冲刺 day07 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 部分按钮图片.对按钮图片进行ps 100 ...

  6. 转行自学 Java 之路的纪念册

    前言: 最近在重读<小狗钱钱>,我对其中的"成功日记"概念特别深刻,偶尔也会记一记“成功日记”. 想了想人生走找到今天,阶段性“成功日记”有没有呢? 有的!几年前的一篇 ...

  7. 是什么让我走上Java之路?

    选择方向,很多人都为根据自己的兴趣爱好和自己的能力所长而作出选择.那么是什么让我走上Java之路? 整个高三我有两门课程没有听过课,一门是数学,一门是物理.当时候物理没有听课的原因很简单,我有一本&l ...

  8. 我的Java之路

    前言: 之前在学习python,刚开始的时候跟多数小白一样学习一些基础的知识,比如数据类型,用法,基本的语言结构,学了一段时间实在是学习不下去了,真是太TMD的无聊了,很多方法都记不住,也不知道学了这 ...

  9. Java之路——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

随机推荐

  1. 20190815网络与信息安全领域专项赛线上赛misc WriteUp

    目录 签到题 题目内容 使用工具 解题步骤 七代目 题目下载地址 使用工具 解题步骤 亚萨西 题目下载链接 使用工具 解题步骤 24word 题目下载链接 使用工具 解题步骤 感想 几星期前报了名却完 ...

  2. idea中如何

    idea工具maven projects里面有9种生命周期,生命周期是包含在一个项目构建中的一系列有序的阶段. 一.最常用的两种打包方法: 1.clean,package(如果报错,很可能就是jar依 ...

  3. 图片上传: ajax-formdata-upload

    传送门:https://www.cnblogs.com/qiumingcheng/p/6854933.html ajax-formdata-upload.html <!DOCTYPE html& ...

  4. 蓝牙BLE: ATT协议层中属性(Attribute)

    ATT(Attribute Protocol)属性层是GATT和GAP的基础,它定义了BLE协议栈上层的数据结构和组织方式. 属性(Attribute)概念是ATT层的核心,ATT层定义了属性的内容, ...

  5. shell (7)if 表达式

    文件表达式if [ -f file ] 如果文件存在if [ -d … ] 如果目录存在if [ -s file ] 如果文件存在且非空if [ -r file ] 如果文件存在且可读if [ -w ...

  6. JS 生成随机字符串 随机颜色

    使用Math.random()生成随机数 0.7489584611780002数字的.toString(n) 将数字转换为 n 进制的字符串 n取值范围(0~36)"0.vbpjw8lipf ...

  7. shell比较浮点数

    1 t1="3123982193.090000000"; 2 t2="7872348342.003000000"; 3 if [ `expr $t2 \> ...

  8. Corrupt JPEG data: 1 extraneous bytes before marker 0xd9 JPEG datastream contains no image

    Corrupt JPEG data: 1 extraneous bytes before marker 0xd9 JPEG datastream contains no image 对比发送时的全部数 ...

  9. 没有可用的软件包 xxx,但是它被其它的软件包引用了

    在linux下apt安装软件,弹出这个错. 解决,更新下资源: sudo apt-get update

  10. linux里安装使用svn

    1.安装 sudo apt-get install subversion 2.checkout工程 svn checkout svn://192.168.0.3/测试工具 /home/testtool ...