zoukankan      html  css  js  c++  java
  • java初学者笔记总结day11

    数组的api-Arrays

    数组转字符串
    数组全部元素设置默认值
    数组copy
    System.arrayCopy -->设置copy范围,copy新数组位置时候使用
    Arrays.copyOf-->copy全部内容使用
    数组排序 sort
    a)基本类型--》直接用
    b)引用类型:提供比较大小的方法-给sort使用
    1)利用Comparable接口---》数组元素自己类实现该接口-》提供比较大小的方法compareTo
    2)利用Comparetor接口---》新定义类实现该接口-》提供比较大小的方法compare
    数组二分法查找
    1)先排序 2)再使用
    数组的扩展知识
    增强for(foreach)
    语法:
    for(元素类型 元素变量 :容器(数组,list,set)对象){


    执行的过程:循环执行,循环容器元素的数量次。依次把容器里第一个到最后一个元素
    分别赋值给元素变量。

    作用:快速遍历容器的元素。
    注意:遍历容器的元素--》只能做读取容器元素的操作,不能设置元素。

    可变参数
    是什么?--》是一种特殊的【参数】--【数据类型】,类似于数组类型。
    语法:
    1)数组元素类型 ... 参数名
    2)方法只能定义一个可变参数,并且必须最后一个
    特殊之处
    1)方法内使用参数:就是一个数组类型
    2)方法调用的时候赋值:
    a)传递数组
    b)传递数组的元素(0到多个,通过逗号分割)

    各字符串对比
    String:不可变字符串
    StringBuilder:可变字符串,线程不安全,速度快
    StringBufferer:可变字符串,线程安全,速度慢

    不可变字符串:自身更改的操作都会产生新的字符串对象返回,自己内容不做更改。
    可变字符串:自身更改的操作可以直接把自己内容做更改。

    String常用api
    concat(了解即可)连接字符串
    转大小写

    StringBuilder和bufferer的功能(api基本相同)
    常用api
    追加(连接字符串)
    删除--》删除一个范围的内容
    插入
    替换--》替换一个范围的内容
    反转

    字符串拼接对比
    String +
    StringBuilder append
    StringBufferer append

    速度对比
    StringBuilder略大于StringBufferer远大于String

    怎么选择?
    1)多线程--》StringBufferer
    2)单线程
    拼接数量多-》StringBuilder
    拼接数量少-》String

  • 相关阅读:
    Jsp 4—— 内置对象
    Jsp 3—— 声明语法
    Jsp 2—— 小脚本
    CF1479B1 Painting the Array I
    P5337 [TJOI2019]甲苯先生的字符串
    CF19C Deletion of Repeats
    CF484D Kindergarten
    CF529B Group Photo 2 (online mirror version)
    CF1068B LCM
    CF554A Kyoya and Photobooks
  • 原文地址:https://www.cnblogs.com/Tab1994/p/5459491.html
Copyright © 2011-2022 走看看