day 07

代码块

  • 局部代码块

  1. 定义在方法中,用户划分区域的

  • 构造代码块

  1. 和成员方法并列,用{}包裹
  2. 每次创建对象的时候都会执行,优先于构造方法
  • 静态代码块

  1. 构造代码块前面用static声明
  2. 在同类下,它优先于主方法执行、优先于构造代码块执行,当以任意形式第一次使用到该类时执行。
  3. 该类不管创建多少对象,静态代码块只执行一次。
  4. 可用于给静态变量赋值,用来给类进行初始化。

API

  Application Programming Interface

  • object

    • 五大常用包:lang、util、sql、io、net
    • lang包下的类不需要导包
    • 常用方法:
      • public boolean equals(Object obj) :
        • 功能:判断两个对象的地址值是否相等。
        • 注意:重写该方法,通常需要覆盖hashCode方法,以便维护hashCode方法的通用合同,该方法规定相等的对象必须具有相等的哈希码。
      • public String toString() :
        • getClass().getName() + '@' + Integer.toHexString(hashCode());
          //全限定类名的字符串@ ”和对象的哈希码的无符号的十六进制表示
  • String

    • 构造方法(简)

      • String() :初始化新创建的 String对象,使其表示空字符序列。
        • char:不能创建空字符对象。
      • String(byte[] bytes) :通过使用平台的默认字符集解码指定的字节数组来构造新的 String
        • 常用ASCII:

          • ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)
          • 32~126(共95个)是字符(32是空格)
            • 48~57为0到9十个阿拉伯数字。
            • 65~90为26个大写英文字母。
            • 97~122号为26个小写英文字母。
            • 其余为一些标点符号、运算符号等。
    • APi
      • boolean equals(Object obj) 判断两个字符串中 的内容是否相同
        boolean equalsIgnoreCase(String str) 判断两个字符串中的内容是否相同, 忽略大小写
        boolean contains(String str) 判断该字符串中是否包含给定的字符串
        boolean startsWith(String str) 判断该字符串是否以给定的字符串开头
        boolean endsWith(String str) 判断该字符串是否以给定的字符串结尾
        boolean isEmpty() 判断该字符串的内容是否为空的字符串
        int length() 获取该字符串的长度
        char charAt(int index) 获取该字符串中指定位置上的字符
        String substring(int start) 从指定位置开始,到末尾结束,截取该字符串,返回新字符串
        String substring(int start,int end) 从指定 位置开始,到指定位置结束,截取该字符串,返回新字符串
        int indexOf(int ch ) 获取给定的字符,在该字符串中第一次出现的位置
        int indexOf(String str) 获取给定的字符串,在该字符串中第一次出现的位置
        int indexOf(int ch,int fromIndex) 从指定位 置开始,获取给定的字符
        byte[] getBytes() 把该字符串 转换成字节数组
        char[] toCharArray() 把该字符串 转换成字符数组
        String replace(char old,char new) 在该字符 串中,将给定的旧字符,用新字符替换
        String replace(String old,String new) 在 该字符串中, 将给定的旧字符串,用新字符串替换
        String trim() 去除字符串两端空格,中间的不会去 除,返回一个新字符串
        String toLowerCase() 把该字符串转换成 小写字符串
        String toUpperCase() 把该字符串转换成 大写字符串
        int indexOf(String str,int fromIndex) 从 指定位置开始,获取给定的字符串,在该字符串中第一 次出现的位置
  • StringBuffer

    • 又称为字符串缓冲区,是一个容器,里面存放了很多字符,是一个线程安全,可变的字符序列
    • 构造方法:
      • StringBuffer() :初始容量为16个字符,参数可以为字符串或定义容量的整型或者字符数组
    • API:
      • 添加:append();
      • 插入:insert(int start, String str);
      • 替换:raplace(int start,  int end, String str);
      • 删除:delete(int start, int end);
  • StringBuilder

    • 与 StringBuffer 兼容的 API,但是属于线程不安全的,所以效率较高,推荐使用

代码块&&API(object、String、StringBuffer、StringBuilder)的更多相关文章

  1. Object,String,StringBuffer,StringBuilder,System,Runtime,Date,Math介绍及用法(API)

    1       Object对象 面向对象的核心思想:“找合适的对象,做适合的事情”. 合适的对象: 自己描述类,自己创建对象. sun已经描述了好多常用的类,可以使用这些类创建对象. API(App ...

  2. 7.算法竞赛中的常用JAVA API :String 、StringBuilder、StringBuffer常用方法和区别(转载)

    7.算法竞赛中的常用JAVA API :String .StringBuilder.StringBuffer常用方法和区别 摘要 本文将介绍String.StringBuilder类的常用方法. 在j ...

  3. final,finally,finalize有什么区别?String, StringBuffer, StringBuilder有什么区别?Exception和Error有什么区别?

    继上篇JVM学习之后,后面将分三期深入介绍剩余JAVA基础面试题,每期3题. 题目一.final,finally,finalize有什么区别? /*请尊重作者劳动成果,转载请标明原文链接:*/ /* ...

  4. String,StringBuffer,StringBuilder源码分析

    1.类结构 String Diagrams StringBuffer Diagrams StringBuilder Diagrams 通过以上Diagrams可以看出,String,StringBuf ...

  5. Java学习笔记--String StringBuffer StringBuilder

    String StringBuffer StringBuilder String http://docs.oracle.com/javase/7/docs/api/ 中文: http://www.cn ...

  6. String,StringBuffer,StringBuilder的区别及其源码分析

    String,StringBuffer,StringBuilder的区别这个问题几乎是面试必问的题,这里做了一些总结: 1.先来分析一下这三个类之间的关系 乍一看它们都是用于处理字符串的java类,而 ...

  7. 浅谈 Java 字符串(String, StringBuffer, StringBuilder)

    我们先要记住三者的特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String ...

  8. String | StringBuffer | StringBuilder 比较

    2016的第一天,我决定写一篇博客来纪念这一天,希望一年好运吧. String|StringBuffer|StringBuilder这三者在我们学习JAVASE核心API的时候常常出来,而且大多数入门 ...

  9. 关于String StringBuffer StringBuilder

    0. String对象的创建       1.关于类对象的创建,很普通的一种方式就是利用构造器,String类也不例外:String s=new String("Hello world&qu ...

随机推荐

  1. Java实现 蓝桥杯VIP 算法提高 士兵排队问题

    算法提高 士兵排队问题 时间限制:1.0s 内存限制:256.0MB 试题 有N个士兵(1≤N≤26),编号依次为A,B,C,-,队列训练时,指挥官要把一些士兵从高到矮一次排成一行,但现在指挥官不能直 ...

  2. Java实现 蓝桥杯VIP 算法提高 笨小猴

    算法提高 笨小猴 时间限制:1.0s 内存限制:256.0MB 问题描述 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率 ...

  3. Java实现洛谷 P1428 小鱼比可爱

    题目描述 人比人,气死人:鱼比鱼,难死鱼.小鱼最近参加了一个"比可爱"比赛,比的是每只鱼的可爱程度.参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只 ...

  4. Java实现第九届蓝桥杯复数幂

    复数幂 题目描述 设i为虚数单位.对于任意正整数n,(2+3i)^n 的实部和虚部都是整数. 求 (2+3i)^123456 等于多少? 即(2+3i)的123456次幂,这个数字很大,要求精确表示. ...

  5. /etc/alternatives

    如何安装一个可执行程序 一般来说我们一个可执行程序,可能在多个路径下,比如在opt路径下,或者在自己的home下. 当要达到在系统的任意路径下敲击该命令,都可执行的话,一般要将该可执行命令的路径加入到 ...

  6. 一篇文章教会你用Python抓取抖音app热点数据

    今天给大家分享一篇简单的安卓app数据分析及抓取方法.以抖音为例,我们想要抓取抖音的热点榜数据. 要知道,这个数据是没有网页版的,只能从手机端下手. 首先我们要安装charles抓包APP数据,它是一 ...

  7. .NetCore对接各大财务软件凭证API——用友系列(2)

    一. 前言 今天我们继续来分析用友系列的第二个产品--U8Cloud2.5 ,apilink方式的API.官网的API文档地址如下:U8API文档 因为我们主要是凭证对接,所以使用到的模块有总账.基础 ...

  8. WinForm通用自动更新AutoUpdater项目实战

    目前我们做的上位机项目还是以Winform为主,在实际应用过程中,可能还会出现一些细节的修改.对于这种情况,如果上位机带有自动更新功能,我们只需要将更新后的应用程序打包放在指定的路径下,可以让用户自己 ...

  9. 【Spring注解驱动开发】在@Import注解中使用ImportSelector接口导入bean

    写在前面 在上一篇关于Spring的@Import注解的文章<[Spring注解驱动开发]使用@Import注解给容器中快速导入一个组件>中,我们简单介绍了如何使用@Import注解给容器 ...

  10. $.ajax 中的contentType 坑坑

    $.ajax 设置数据类型 applicaiton/json之后,服务器端(express)就拿不到数据. $.ajax 中的 contentType 和 dataType: contentType ...