4.1、String类

描述:该类代表字符串

构造方法:

方法 描述
public String() 初始化构造一个空白字符串
public String(char[] value) 通过字符数组初始化字符串
public String(byte[] bytes) 通过使用平台的默认字符集解码指定的字节数组来构造新的String
public String(byte[] bytes, Charset charset) 通过使用自定义的字符集解码指定的字节数组来构造新的String
public String(StringBuffer buffer) 字符串缓冲区的内容被复制,重新分配一个新的字符串
public String(StringBuilder builder) 字符串构建器的内容被复制,重新分配一个新的字符串

成员方法:

方法 描述
public int length() 返回此字符串的长度
public int indexOf(int ch) 返回指定字符第一次出现的字符串内的索引
public int lastIndexOf(int ch) 返回指定字符的最后一次出现的字符串中的索引
public int indexOf(String str) 返回指定子字符串第一次出现的字符串内的索引
public int lastIndexOf(String str) 返回指定子字符串最后一次出现的字符串中的索引
public char charAt(int index) 返回char指定索引处的值
public char[] toCharArray() 将此字符串转换为新的字符数组
public static String valueOf(int i) 返回int参数的字符串int形式
public String trim() 返回一个删除前后空格的字符串
public String toString() 返回当前字符串
public String concat(String str) 将指定的字符串连接到该字符串的末尾
public String toLowerCase() 返回一个转换为小写的字符串
public String toUpperCase() 返回一个转换为大写的字符串
public String substring(int beginIndex) 返回一个以指定索引处的字符开头到该字符串的末尾的子字符串
public String substring(int beginIndex, int endIndex) 返回一个以指定索引处的字符开头到指定索引处的字符结尾的子字符串
public String replace(char oldChar, char newChar) 返回一个替换所有旧字符后的新字符串
public String replaceAll(String regex, String replacement) 返回一个替换所有符合正则表达式字符串后的新字符串
public String[] split(String regex) 根据正则表达式拆分字符串并返回拆分后的字符串数组
public boolean startsWith(String prefix) 判断此字符串是否以指定的前缀开头
public boolean endsWith(String suffix) 判断此字符串是否以指定的后缀结尾
public boolean matches(String regex) 根据正则表达式判断当前字符串是否符合要求
public boolean isEmpty() 判断当前字符串是否为空字符串
public boolean contains(CharSequence s) 判断当前字符串是否包含s字符
public boolean equals(Object anObject) 判断当前字符串是否和anObject相等

注意事项:

StringBuffer StringBuilder
内容可以变 内容可以变
线程安全 线程不安全
多线程操作字符串 单线程操作字符串
StringBuffer sb = new StringBuffer();
sb.append("Hello");
sb.append(" ");
sb.append("World");
System.out.println(sb.toString());
StringBuilder sb = new StringBuilder();
sb.append("Hello");
sb.append(" ");
sb.append("World");
System.out.println(sb.toString());

4.2、八种包装类

基本类型 包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
自动装箱:把基本数据类型转换为对应的包装类类型
自动拆箱:把包装类类型转换为对应的基本数据类型

4.3、BigInteger类

BigInteger bi1 = new BigInteger("100");
BigInteger bi2 = new BigInteger("50"); // public BigInteger add(BigInteger val):加
System.out.println("add:" + bi1.add(bi2)); // public BigInteger subtract(BigInteger val):减
System.out.println("subtract:" + bi1.subtract(bi2)); // public BigInteger multiply(BigInteger val):乘
System.out.println("multiply:" + bi1.multiply(bi2)); // public BigInteger divide(BigInteger val):除
System.out.println("divide:" + bi1.divide(bi2));

4.4、BigDecimal类

BigDecimal bd1 = new BigDecimal("0.09");
BigDecimal bd2 = new BigDecimal("0.01");
// public BigDecimal add(BigDecimal val):加
System.out.println("add:" + bd1.add(bd2)); BigDecimal bd3 = new BigDecimal("1.0");
BigDecimal bd4 = new BigDecimal("0.32");
// public BigDecimal subtract(BigDecimal val):减
System.out.println("subtract:" + bd3.subtract(bd4)); BigDecimal bd5 = new BigDecimal("1.015");
BigDecimal bd6 = new BigDecimal("100");
// public BigDecimal multiply(BigDecimal val):乘
System.out.println("multiply:" + bd5.multiply(bd6)); BigDecimal bd7 = new BigDecimal("1.301");
BigDecimal bd8 = new BigDecimal("100");
// public BigDecimal divide(BigDecimal val):除
System.out.println("divide:" + bd7.divide(bd8));

4.5、异常

概述:异常就是程序出现了不正常的情况

体系:

解决:

解决方案一:用try-catch方式处理异常
try {
可能出现异常的代码;
} catch(异常类名 变量名) {
异常的处理代码;
} 解决方案二:用throws方式处理异常
public void 方法名() throws 异常类名 { }

注意:

案例:

// 自定义异常类
class ScoreException extends Exception {
public ScoreException() {} public ScoreException(String message) {
super(message);
}
} class Teacher {
public void checkScore(int score) throws ScoreException {
if (score < 0 || score > 100) {
throw new ScoreException("你给的成绩有误,分数应该在0-100之间");
} else {
System.out.println("你给的成绩正常");
}
}
} public class Main {
public static void main(String[] args) {
try {
Teacher s = new Teacher();
s.checkScore(120);
} catch (ScoreException e) {
e.printStackTrace();
}
}
}

第四章 常用API(下)的更多相关文章

  1. 第四章 常用API(上)

    4.1.Object类 描述:该类是所有类的最终根类 方法 描述 public boolean equals(Object obj) 表示某个其它对象是否"等于"此对象 publi ...

  2. javaservlet处理四种常用api请求get,put,post,delete

    一般在网站搭建中servlet只需处理post,get请求便足已.本篇注重使用javaweb编写restful风格api,在servlet中对四种常用请求进行处理. 在api中对于一个请求要做的通常是 ...

  3. ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS下使用传感器和执行器

    ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS使用传感器和执行器 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 第四 ...

  4. Java基础第四天--常用API

    常用API 基本类型包装类概述 将基本数据类型封装成对象的好处可以在对象中定义更多的功能方法操作该数据 常用的操作之一:用于基本数据类型与字符串之间的转换 基本数据类型 包装类 byte Byte s ...

  5. Windows核心编程 第四章 进程(下)

    4.3 终止进程的运行 若要终止进程的运行,可以使用下面四种方法: • 主线程的进入点函数返回(最好使用这个方法) . • 进程中的一个线程调用E x i t P r o c e s s函数(应该避免 ...

  6. robotium从入门到放弃 四 Robotium常用API

      获取控件 getText() getEditText() getButton() getImage() getImageButton() getEditText() getView() getWe ...

  7. DirectX12 3D 游戏开发与实战第四章内容(下)

    Direct3D的初始化(下) 学习目标 了解Direct3D在3D编程中相对于硬件所扮演的角色 理解组件对象模型COM在Direct3D中的作用 掌握基础的图像学概念,例如2D图像的存储方式,页面翻 ...

  8. C#语言————第四章 常用Convert类的类型转换方法

    方法 说明Convert.ToInt32() 转换为整型(int 型)Convert.ToStringle() 转换为单精度浮点型(float 型)Convert.ToDouble()  转换为双精度 ...

  9. python全栈开发中级班全程笔记(第二模块、第四章)(常用模块导入)

    python全栈开发笔记第二模块 第四章 :常用模块(第二部分)     一.os 模块的 详解 1.os.getcwd()    :得到当前工作目录,即当前python解释器所在目录路径 impor ...

随机推荐

  1. webpack4.X + react搭建

    环境准备工作:windows7.webStorm 2017.1.4.Nodejs 8.7.0.npm 5.4.2 PS:安装的时我们都带上版本,这样即便webpack版本发生变化,也不会出现版本问题. ...

  2. 新建maven项目总是需要重新选择maven的配置文件

    解决办法: other settings->settings for new projects... 找到maven设置自己的目录和配置

  3. 一个C++版的网络数据包解析策略

    C++版的网络数据包解析策略(升级版) 一.数据包格式形如下图 二.代码 int ReceiveFromRemoteEndPoint() { int nPackageDataLength = ; ch ...

  4. shall 2-13

    1.用一句话概括Shell Shell是一个解释器,介于应用程序(用户)和操作系统之间的一个桥梁,负责命令的解释 2.Shell的编程语言编译型语言: 程序在执行之前需要个专门的编译过程,把程序编译成 ...

  5. Springboot整合MongoDB的Docker开发,其它应用也类似

    1 前言 Docker是容器开发的事实标准,而Springboot是Java微服务常用框架,二者必然是会走到一起的.本文将讲解如何开发Springboot项目,把它做成Docker镜像,并运行起来. ...

  6. CountDownLatch 线程工具类

    CountDownLatch:概念是,允许一个或多个线程等待其他线程完成操作: 在线程基础知识中,学习过线程的join方法,当前线程阻塞等待join线程执行完毕才能执行: 测试代码如下: public ...

  7. React学习路径快速进入AntDesignPro开发

    好久没有写博客,有空再来记一下.最近在整些小东西,需要用到前端,最开始本着对nodejs的动不动几百兆插件的恐惧, 于是使用自己以前写的 OSS.Pjax 小框架(类似国外的Pjax,利用pushSt ...

  8. centos7----创建虚拟环境

    优点 使不同的应用开发环境独立 环境升级不影响其他应用,也不会影响全局的python环境 它可以防止系统出现包管理混乱和版本的冲突 安装 pip install virtualenv 创建虚拟环境 v ...

  9. v-model修饰符

    1).lazy:取代 input 监听 change 事件. 用法: v-model.lazy="message" 效果: 在input输入框改变数据时,v-model绑定的DOM ...

  10. USTC信息安全期末重点

    一.ARP协议问题1. ARP协议的作用是什么.地址解析协议,即IP地址和MAC地址之间的转换. 2. 引入ARP缓存的功能是什么.将这一映射关系保存在 ARP 缓存中,使得不必重复运行 ARP 协议 ...