Java基础知识——Java常用类的使用
目录
内容小结
String类
String对象的创建
字符串的特性判断
拼接
String类的常用方法
String和char[]的相互转换
实现代码
StringBuffer
StringBuffer常用方法
StringBuilder
JDK8之前日期时间API
Date类
Calendar日历类
常用方法的使用:
JDK8中新日期时间API
Instant类
格式化与解析日期或时间
DateTimeFormatter类
实例化的三种方式
Java比较器
Comparable接口
Comparator排序
实际在写算法题时用到的排序方法
System类
Math类
BigInteger类
BigDecimal类
内容小结
String类
String对象的创建
字符串的特性判断
拼接
String类的常用方法
String和char[]的相互转换
实现代码
package com.String;import org.junit.Test;// String与其他类型的转换
public class StringDemo {// String --> 基本数据类型、包装类:调用包装类的静态方法:parseXxx(str)// 基本数据类型、包装类 --> String:调用String重载的valueOf(xxx)@Testpublic void test1() {String s1 = "100";int i = Integer.parseInt(s1);String s2 = String.valueOf(i);}@Testpublic void test2() {
// String --> char[]:调用String的toCharArray()
// char[] --> String:调用String的构造器String s1 = "hello world";char[] chars = s1.toCharArray();for (char i:chars) {System.out.println(i);}char[] char1 = new char[]{'a','b','c'};String str = new String(char1);System.out.println(str);}@Testpublic void tets3(){
// 编码:String --> byte[]:调用String的getBytes()
// 解码:byte[] --> String:调用String的构造器String s1 = "hello world";byte[] bytes = s1.getBytes();for (byte a : bytes) {System.out.println(a);}byte[] b = new byte[]{'h','e','l','l','o'};String s = new String(b);System.out.println(s);}
}
String s = "169"; byte b = Byte.parseByte( s ); short t = Short.parseShort( s ); int i = Integer.parseInt( s ); long l = Long.parseLong( s ); Float f = Float.parseFloat( s ); Double d = Double.parseDouble( s );
StringBuffer
StringBuffer常用方法
StringBuilder
JDK8之前日期时间API
Date类
Calendar日历类
常用方法的使用:
package com.ykx.java;import org.junit.Test;import java.util.Calendar;
import java.util.Date;/*** @author: yangkx* @Title: DateTest* @ProjectName: JavaSenior* @Description:* @date: 2022/2/9 11:35* Calendar日历类的使用*/
public class DateTest {@Testpublic void test(){Calendar calendar = Calendar.getInstance();System.out.println(calendar.getClass());System.out.println("常用方法举例:");//get()System.out.println("====== get():======");int days = calendar.get(Calendar.DAY_OF_MONTH);System.out.println(days);System.out.println(calendar.get(Calendar.DAY_OF_YEAR));//set()System.out.println("====== set():======");calendar.set(Calendar.DAY_OF_MONTH, 22);System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//add()System.out.println("====== addt():======");calendar.add(Calendar.DAY_OF_MONTH, 5);System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//getTime(): 日历类 --> DateSystem.out.println("====== getTime():======");Date date = calendar.getTime();System.out.println(date);//setTime(): Date --> 日历类System.out.println("====== setTime():======");Date date1 = new Date();calendar.setTime(date1);System.out.println(calendar.get(Calendar.DAY_OF_MONTH));}}
JDK8中新日期时间API
package com.ykx.java;import org.junit.Test;import java.time.LocalDateTime;/*** @author: yangkx* @Title: NewDateTest* @ProjectName: JavaSenior* @Description:* @date: 2022/2/9 12:08* JDK8中新的日期时间类使用*/
public class NewDateTest {@Testpublic void test(){LocalDateTime localDateTime = LocalDateTime.now();System.out.println(localDateTime);System.out.println(localDateTime.getMonthValue());LocalDateTime localDateTime1 = localDateTime.withMonth(9);System.out.println(localDateTime1);}
}
Instant类
格式化与解析日期或时间
DateTimeFormatter类
实例化的三种方式
Java比较器
Comparable接口
package com.ykx.java;import org.junit.Test;import java.util.Arrays;/*** @author: yangkx* @Title: CmpTest* @ProjectName: JavaSenior* @Description:* @date: 2022/2/9 14:22* comparable排序的实现*/
public class CmpTest {@Testpublic void test() {Goods[] gs = new Goods[4];gs[0] = new Goods(12,1);gs[1] = new Goods(50,2);gs[2] = new Goods(50,3);gs[3] = new Goods(6,4);Arrays.sort(gs);System.out.println(Arrays.toString(gs));}
}
class Goods implements Comparable{int price;int num;Goods(){}public Goods(int price, int num) {this.price = price;this.num = num;}@Overridepublic int compareTo(Object o) {Goods g = (Goods) o;if(this.price != g.price){return -(this.price - g.price);//从大到小}else{return (this.num - g.num);//从小到大}}@Overridepublic String toString() {return "Goods{" +"price=" + price +", num=" + num +'}';}
}
Comparator排序
实际在写算法题时用到的排序方法
class Solution {// 区间调度问题public int findMinArrowShots(int[][] intvs) {if (intvs.length == 0) return 0;// 按 end 升序排序Arrays.sort(intvs, new Comparator<int[]>() {public int compare(int[] a, int[] b) {return a[1] - b[1];}});// 至少有一个区间不相交int count = 1;// 排序后,第一个区间就是 xint x_end = intvs[0][1];for (int[] interval : intvs) {int start = interval[0];// 把 >= 改成 > 就行了if (start > x_end) {count++;x_end = interval[1];}}return count;}
}
System类
Math类
BigInteger类
BigDecimal类
Java基础知识——Java常用类的使用相关推荐
- Java基础看jvm,JAVA基础知识|java虚拟机(JVM)
一.JVM简介 java语言是跨平台的,兼容各种操作系统.实现跨平台的基石就是虚拟机(JVM),虚拟机不是跨平台的,所以不同的操作系统需要安装不同的jdk版本(jre=jvm+类库:jdk=jre+开 ...
- Java基础篇:常用类
文章目录 1.字符串相关的类 1.1 String类及常用方法 String的特性 String对象的创建 字符串对象是如何存储的 String使用陷阱 String常用方法 1.2 StringBu ...
- java基础知识-对象和类
前言: 因为要准备Java面试,所有将java基础知识点重新复习一遍,主要笔记来源于菜鸟教程和java核心技术的书籍中,也有一些博客上的资料(这些只供我个人学习使用) Java 对象和类 对象:对象是 ...
- Java基础篇之常用类(1)
目录 常用API: Scanner: object类: to String()方法: equals()方法: String类: String类创建对象的特点: String练习之模拟用户登录: Str ...
- Java基础---API概述---常用类(Object类/String类)---equals和==
API概述 API:application programming interface,应用程序编程接口 用于规定方法名称的规则集合,定义了方法的修饰符.返回值类型.方法的名称.方法的参数列表.方法的 ...
- java基础知识---IO常用基础操作(一)
一. File类 1.1 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.2 构造方法 public File(String path ...
- java基础知识(java基础知识刷题软件)
自学Java 怎么入门 在学习Java前,你有必要思考一下: 你对学习Java是否有兴趣2.您是否能静下心学习Java 大家都知道兴趣很重要,如果您对Java没有兴趣,相信你没法能静下心学习Java ...
- java定义一个eat方法_小黄鸭系列java基础知识 | java中的方法
前言 今天我们要探讨的问题,是java基础语法的最后一个问题,也就是java中的方法,今天主要从以下几个方面来介绍: 方法是什么(定义) 方法的分类 方法的调用 应该说,学完今天的知识,你至少应该看懂 ...
- JavaSE基础知识之常用类和集合
常用类 Object类 protected Object clone() throws CloneNotSupportedException 克隆方法:创建并返回此对象的一个副本 Object 类的 ...
- java初级能干什么_小黄鸭系列java基础知识 | java能干什么?
java能干什么? 前言 java本身只是一种编程语言,一种工具,我们在使用任何工具之前,应该要充分了解这个工具能干什么,只有搞清楚了这问题,你才能清楚你要不要使用它.所以今天我们要探讨的问题就是-- ...
最新文章
- linux 功能测试宏 POSIX_C_SOURCE
- RuntimeError: An attempt has been made to start a new process before the current pr
- 【机器学习算法-python实现】Adaboost的实现(1)-单层决策树(decision stump)
- Qt Creator部署到设备
- 3G助推智慧医疗 看病将更加“智能化”
- 前端开发 —— BOM
- Android自定义控件学习(二)-----自定义attr Style styleable以及其应用
- JavaScriptjQuery.HTML5事件
- Linux下黑白棋c语言程序,黑白棋c语言程序.doc
- ubuntu 20.04 美化开机动画
- Python-数据类型-4 第七次全国人口普查数据分析
- 《高等运筹学》复习题手写解答 Advanced Operations Research: Final Exam:Review Exercises
- 【jetson nano】SD卡驱动挂载到nano板
- 荧光仪电源维修Spellman电源维修FF60P4X3313
- 基于Python的指数基金量化投资-通过市盈率和市净率对指数估值
- 【day02】选择题题解
- 计算机与控制科学谁好,考研考哪个方向好呢?模式识别 控制理论控制工程 计算机应专业研究生 信号与信息处理的进...
- Linux系统中read的用法,Linux系统中read的使用技巧
- android内存最小版本下载,猫和老鼠精简版下载-猫和老鼠内存最小版下载v6.6.1 安卓版-芒果手游网...
- java是否过于笨重?
热门文章
- Qt简介以及如何配置Qt使用VS2010进行开发
- oracle字段属性设置下拉列表,下拉列表 select-option ; select-optgroup-option
- socketmq 设置队列大小_LeetCode 622:设计循环队列 Design Circular Queue
- Unity 3D Hierarchy视图
- xclip linux_使用xclip在Linux命令行中复制和粘贴
- 开源素材网_22个用于广告素材的开源工具
- 汇编edx_开源社区开始热议edX
- godaddy ssl_免费在线Linux培训,GoDaddy切换到OpenStack等
- 前端:JS/23/JS内置对象(String对象,Array对象,Date对象,Boolean对象,Number对象,Math对象),实例:求圆的面积,求直角三角形
- Bootstrap缩略图.thumbnail