Java基础第四天--常用API
常用API
基本类型包装类概述
将基本数据类型封装成对象的好处可以在对象中定义更多的功能方法操作该数据
常用的操作之一:用于基本数据类型与字符串之间的转换
| 基本数据类型 | 包装类 |
|---|---|
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
Integer类的概述和使用
Integer:包装一个对象中的原始类型int的值
| 方法名 | 说明 |
|---|---|
| public Integer (int value) | 根据int值创建Integer对象(过时) |
| public Integer (String s) | 根据String值创建Integer对象(过时) |
| public static Integer valueOf(int i) | 返回表示指定的int值的Integer实例 |
| public static Integer valueOf(String s) | 返回一个保存指定值的Integer对象String |
int和String的相互转换
基本类型包装类的最常见操作是:用于基本类型和字符串之间的相互转换
1.int转换为String
public static String valueOf(int i):返回int参数的字符串表示形式。该方法是String类中的方法
2.String转换为int
public static int parseInt(String s):将字符串解析为int类型。该方法是Integer类中的方法
/*
int和String的相互转换
*/
public class IntegerDemo {
public static void main(String[] args) {
//int---String
int number = 100;
//方式1
String s1 = "" + number;
System.out.println(s1);
//方式2
String s2 = String.valueOf(number);
System.out.println(s2);
System.out.println("========");
//String---int
String 2 = "100";
//方式1
//String---Integer---int
Integer i =Integer.valueOf(s);
int x = i.intValue();
System.out.println(x);
//方式2
int y = Integer.parseInt(s);
System.out.println(y);
}
}
案例:字符串中数据排序
需求:有一个字符串"91 27 46 38 50",请写程序实现最终输出结果是"27 38 46 50 91"
public class IntegerTest {
public static void main(String[] args) {
//定义一个字符串
String s = "91 27 46 38 50";
//把字符串中的数据存储到一个int类型的数组中
String[] strArray = s.split(" ");
// for (int i = 0; i < strArray.length; i++) {
// System.out.println(strArray[i]);
// }
//定义一个int数组,把String[]数组中的每一个元素存储到int数组中
int[] arr = new int[strArray.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(strArray[i]);
}
// for (int i = 0; i < arr.length; i++) {
// System.out.println(arr[i]);
// }
//对int数组进行排序
Arrays.sort(arr);
//把排序后的int数组中的元素进行拼接得到一个字符串,这里拼接采用StringBuilder来实现
StringBuilder sb = new StringBuilder();
for (int i = 0; i < arr.length; i++) {
if(i == arr.length - 1) {
sb.append(arr[i]);
}else {
sb.append(arr[i]).append(" ");
}
}
String result = sb.toString();
//输出结果
System.out.println("result:" + result);
//result:27 38 46 50 91
}
}
自动装箱和拆箱
- 装箱:把基本数据类型转换为对应的包装类类型
- 拆箱:把包装类类型转换为对应的基本数据类型
注意:在使用包装类类型的时候,如果做操作,最好先判断是否为null,推荐的是,只要是对象,在使用前就必须进行不为null的判断
public class IntegerDemo {
public static void main(String[] args) {
//装箱:把基本数据类型转换为对应的包装类类型
Integer.valueOf(100);
Integer ii = 100;//Integer.valueOf(100);
//拆箱:把包装类类型转换为对应的基本数据类型
//ii += 200;
// ii = ii.intValue() + 200;
ii += 200;
System.out.println(ii);
Integer iii = null;
if(iii != null) {
iii += 300;
}
}
}
日期类
Date类概述和构造方法
Date代表了一个特定的时间,精确到毫秒
| 方法名 | 说明 |
|---|---|
| public Date() | 分配一个Date对象,并初始化,以使它代表它被分割的时间,精确到毫秒 |
| public Date(long date) | 分配一个Date对象,并将其初始化为表示从标准化时间起指定的毫秒值 |
Date类的常用方法
| 方法名 | 说明 |
|---|---|
| public long getTime() | 获取的是日期对象从1970年1月1日00:00:00到现在的毫秒值 |
| Public void setTime(long time) | 设置时间,给的是毫秒值 |
SimpleDateFormat类概述
1.SimpleDateFormat是一个具体的类,用于以区域设置敏感的方式格式和解析日期。
2.日期和时间格式由日期和时间模式字符串指定,在日期和时间模式字符串中,从'A'到'Z'以及从'a'到'z'引号的字母被解释为时间日期或时间字符串的组件的模式字母
3.常用的模式字母以及对应关系如下:
- y 年
- M 月
- d 日
- H 时
- m 分
- s 秒
SimpleDateFormat的构造方法
| 方法名 | 说明 |
|---|---|
| public SimpleDateFormat() | 构造一个SimpleDateFormat,使用默认模式和日期格式 |
| public SimpleDateFormat(String pattern) | 构造一个SimpleDateFormat使用给定的模式和默认的日期格式 |
SimpleDateFormat格式化和解析日期
1.格式化(从Date到String)
public final String format(Date date):将日期格式化成日期/时间字符串
2.解析(从String到Date)
public Date parse(String source):从给定字符串的开始解析文本以生成日期
Calendar的常用方法
| 方法名 | 说明 |
|---|---|
| public int get(int field) | 返回给定日历字段的值 |
| public abstract void add(int field,int amount) | 根据日历的规则,将指定的时间量添加或减去给定的日历字段 |
| public final void set(int year,int mouth,int date) | 设置当前日历的年月日 |
Java基础第四天--常用API的更多相关文章
- java基础(6)常用API
1 Object类 `java.lang.Object`类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是Object. 如果一个类没有特 ...
- Java基础学习笔记十三 常用API之正则表达式、Date、DateFormat、Calendar
正则表达式 正则表达式(英语:Regular Expression,在代码中常简写为regex).正则表达式是一个字符串,使用单个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串.在 ...
- Java实习生常规技术面试题每日十题Java基础(四)
目录 1.String 和StringBuffer的区别. 2.数组有没有length()这个方法? String有没有length()这个方法? 3.final, finally, finalize ...
- JAVA基础(二)—— 常用的类与方法
JAVA基础(二)-- 常用的类与方法 1 Math类 abs ceil floor 绝对值 大于等于该浮点数的最小整数 小于等于该浮点数的最大整数 max min round 两参数中较大的 两参数 ...
- javaservlet处理四种常用api请求get,put,post,delete
一般在网站搭建中servlet只需处理post,get请求便足已.本篇注重使用javaweb编写restful风格api,在servlet中对四种常用请求进行处理. 在api中对于一个请求要做的通常是 ...
- for、while循环(java基础知识四)
1.循环结构概述和for语句的格式及其使用 * 什么是循环结构 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把 ...
- Java 基础(四)| IO 流之使用文件流的正确姿势
为跳槽面试做准备,今天开始进入 Java 基础的复习.希望基础不好的同学看完这篇文章,能掌握泛型,而基础好的同学权当复习,希望看完这篇文章能够起一点你的青涩记忆. 一.什么是 IO 流? 想象一个场景 ...
- 01 语言基础+高级:1-5 常用API第二部分_day01.【Object类、常用API: Date类、System类、StringBuilder类】
day01[Object类.常用API] 主要内容 Object类 Date类 DateFormat类 Calendar类 System类 StringBuilder类 包装类 java.lang.O ...
- JAVA基础第四章-集合框架Collection篇
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...
随机推荐
- 黑马vue---16、vue中通过属性绑定为元素设置class类样式
黑马vue---16.vue中通过属性绑定为元素设置class类样式 一.总结 一句话总结: 这里就是为元素绑定class样式,和后面的style样式区别一下 vue中class样式绑定方式的相对于原 ...
- JS中的map()方法
map定义和方法 map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理的后值. map()方法按照原始数组元素顺序依次处理元素. 注意: map不会对空数组进行检测 map不会改变原始 ...
- CSS三角形的实现原理及运用
原理 css盒模型 一个盒子包括: margin+border+padding+content– 上下左右边框交界处出呈现平滑的斜线. 利用这个特点, 通过设置不同的上下左右边框宽度或者颜色可以得到小 ...
- StringJoiner,StringBuffer的一些lamada写法
public String friendlyText(List data) { if(CollectionUtils.isEmpty(data)) { return "[]"; } ...
- linux编译gpu_flow
因为需要做双流,论文里面推荐到这个GPU版本的TVL1算法,于是开始编译. 一.下载源码 git clone https://github.com/feichtenhofer/gpu_flow.git ...
- QQ群关系数据库处理
1.附加数据库 EXEC sp_attach_single_file_db @dbname= 'GroupData1_Data' , @physname= '/media/disk4/share/Da ...
- 【Zookeeper】分布式环境搭建
环境说明 本文以三台机器为例,分别为bigdata111,bigdata112,bigdata113三台机器,先部署bigdata111机器,然后通过scp分发配置方式配置其他两台机器: 安装步骤 上 ...
- linux系统下安装python3及其配置
Linux下安装Python3.6和第三方库 linux一般自带python2,不要动它,使用python3运行python脚本就好,部分linux系统命令依赖目前的python2环境, 比如yum! ...
- Linux企业面试题(一)
一.如何过滤出已知当前目录dongdaxia中的所有一级目录(提示:不包含dongdaxia目录下面目录的子目录及隐藏目录,即只能是一级目录)? 1. 过滤以“d”开头的 2.查看以/结尾的目录 3. ...
- Spring Boot + Vue 跨域请求问题
使用Spring Boot + Vue 做前后端分离项目搭建,实现登录时,出现跨域请求 Access to XMLHttpRequest at 'http://localhost/open/login ...