第13章 常用类
一、包装类
二、String

String的常用方法:
- equals:判断内容是否相等,区分大小写。
String str1 = "hello";String str2 = "Hello";System.out.println(str1.equals(str2));//false
- equalsIgnoreCase:判断内容是否相等,不区分大小写。
String username = "john";if(username.equalsIgnoreCase("johN")) {//输出 相等System.out.println("相等");} else {System.out.println("不等");}
- length:获取字符的个数,字符串的长度。
System.out.println("韩顺平".length());//3
- indexOf:获取字符在字符串对象中第一次出现的索引,索引从0开始,如果找不到,则返回-1。
- lastIndexOf:获取字符在字符串对象中最后一次出现的索引,索引从0开始,如果找不到,则返回-1。
String s1 = "wer@terwe@g@";System.out.println(s1.indexOf('@'));//3System.out.println(s1.indexOf("we"));//0System.out.println(s1.lastIndexOf('@'));//11System.out.println(s1.lastIndexOf("we"));//7
- subString:截取指定范围的字符串。
String name = "hello,张三";System.out.println(name.substring(6));//张三 截取 [6,最后] 的字符串System.out.println(name.substring(1, 6));//ello, 截取 [1,6) 的字符串
- toUpperCase:转换成大写。
- toLowerCase:转换成小写。
String s = "heLLO";System.out.println(s.toUpperCase());//HELLOSystem.out.println(s.toLowerCase());//hello
- concat:拼接字符串。
String s1 = "宝玉";s1 = s1.concat("林黛玉").concat("薛宝钗").concat("together");System.out.println(s1);//宝玉林黛玉薛宝钗together
- replace:替换,在字符串中找到第一个参数,全部替换为第二个参数。
注意:返回替换后的字符串,替换不会对原本的字符串造成影响。
String s2 = "宝玉 and 林黛玉 林黛玉 林黛玉";String s3 = s2.replace("林黛玉", "薛宝钗");System.out.println(s2);//宝玉 and 林黛玉 林黛玉 林黛玉System.out.println(s3);//宝玉 and 薛宝钗 薛宝钗 薛宝钗
- split:分割字符串。
注意:如果有特殊字符,需要用转义符\
String poem = "锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦";String[] split = poem.split(",");for (int i = 0; i < split.length; i++) {System.out.println(split[i]);//锄禾日当午//汗滴禾下土//谁知盘中餐//粒粒皆辛苦}String poem1 = "C:\\idea_java_projects\\chapter13";String[] split1 = poem1.split("\\\\");for(int i = 0; i < split1.length; i++) {System.out.println(split1[i]);//C://idea_java_projects//chapter13}
- compareTo:比较两个字符串的大小
(1)先逐个比较字符的内容,如果遇不等,则返回两个字符的差;
(2)如果前面比较的部分相等,但其中一个字符串没有字符了,即长度不等,则返回两个字符串的长度差;
(3)如果每个字符都相同,长度也相同,则返回0.
String str = "jack";String a1 = "jaa";String a2 = "jaak";String a3 = "jaakk";System.out.println(a1.compareTo(str));//-2 'a' - 'c' = -2System.out.println(a2.compareTo(str));//-2 'a' - 'c' = -2System.out.println(a3.compareTo(str));//-2 'a' - 'c' = -2String b1 = "jac";String b2 = "jacka";System.out.println(b1.compareTo(str));//-1 b1.length - str.length = -1System.out.println(b2.compareTo(str));//1 b2.length - str.length = 1String c = "jack";System.out.println(c.compareTo(str));//0
- charAt:返回指定索引处的字符
String s5 = "hspeduxyz";System.out.println(s5.charAt(5));//u
- getBytes:将字符串转换为字节数组。
//第一种:该方法将使用平台默认的字符编码方式,将字符串转换为字节数组。
//返回一个byte数组,其中每个字节都表示字符串中相应位置的字符。
public byte[] getBytes();
//第二种:该方法需要传入一个字符编码方式charsetName作为参数,将字符串转换为字节数据。
//可能会抛出UnsupportedEncodingException异常,需要进行异常处理。
public byte[] getBytes(String charsetName) throws UnsupportedEncodingException;
String str01 = "Hello,你好,こんにちは";//使用平台默认字符编码方式byte[] bytesDefault = str01.getBytes();System.out.println("使用平台默认字符编码方式进行转换:");for(byte b : bytesDefault) {//打印字节数组的十六进制表示System.out.print(Integer.toHexString(b & 0xFF).toUpperCase() + " ");//48 65 6C 6C 6F 2C E4 BD A0 E5 A5 BD 2C E3 81 93 E3 82 93 E3 81 AB E3 81 A1 E3 81 AF }//使用UTF-8字符编码方式try {byte[] bytesUTF8 = str01.getBytes("UTF-8");System.out.println("\n使用UTF-8字符编码方式进行转换:");for(byte b : bytesUTF8) {System.out.print(Integer.toHexString(b & 0xFF).toUpperCase() + " ");//48 65 6C 6C 6F 2C E4 BD A0 E5 A5 BD 2C E3 81 93 E3 82 93 E3 81 AB E3 81 A1 E3 81 AF }} catch (UnsupportedEncodingException e) {e.printStackTrace();}//使用ISO-8859-1字符编码方式try {byte[] bytesISO8859 = str01.getBytes("ISO-8859-1");System.out.println("\n使用ISO-8859-1字符编码方式进行转换:");for(byte b : bytesISO8859) {System.out.print(Integer.toHexString(b & 0xFF).toUpperCase() + " ");//48 65 6C 6C 6F 2C 3F 3F 2C 3F 3F 3F 3F 3F }} catch (UnsupportedEncodingException e) {e.printStackTrace();}
三、StringBuffer
四、StringBuilder
五、Math
六、Date、Calender、LocalDate...
七、System
八、Arrays
九、BigInteger BigDecimal
相关文章:
第13章 常用类
一、包装类 二、String String的常用方法: equals:判断内容是否相等,区分大小写。 String str1 "hello";String str2 "Hello";System.out.println(str1.equals(str2));//false equalsIgnoreCase:判断内容…...
15.数组的方法(改变原数组和不改变原数组)
改变原数组 (1)pop 语法:数组名.pop() 作用:删除数组最后一项 返回值:返回被删除的那一项 var arr=["zhangsna","lisi","wanger","mazi"] var res=arr.pop() console.log(arr) //[zhangsna, lisi, wange…...
随后记: uniapp uview u-dropdown 下拉菜单固定高度滑动不生效
使用u-dropdown 下拉组件 按照uview官网讲解使用 配置根本不生效 scroll-y"true" style"height: 200rpx;" 但是在下拉的时候,不能上下滑动 ,原因是自带的遮罩层挡住了 解决办法:在下拉菜单打开和关闭的时候,…...
一文梭哈动态代理
大家好,这里是教授.F 引入: 先看一个生活化的例子,如果一个明星他会唱歌,会跳舞。但是自己太忙了,没时间去宣传自己和去找工作,所以他需要有人帮他代理。然后呢这个代理者也需要知道他会什么,什…...
如何查询Windows 10电脑的IP地址
如何查询Windows 10电脑的IP地址 引言 在Windows 10操作系统中,查询电脑的IP地址是一项基本而重要的任务,无论是为了配置网络、解决连接问题,还是进行远程访问。 基础知识 IP地址:互联网协议地址,用于标识网络中的…...
java: 警告: 源发行版 8 需要目标发行版 8
前言 该文章中项目背景是:IDEA与设置的版本与实际电脑配置的不一致。也就是说只改了这个团队项目的JDK版本,IDEA上其它项目JDK版本未更改。 提示: IDEA警告:javaX:警告:源发行版 需要目标发行版 简略步…...
CCF-CSP认证 2023年12月 2.因子化简
题解: 通过质数筛法,用个板子函数就行了,计算出质数系数就行了 #pragma GCC optimize(2, 3, "Ofast", "inline") #include <bits/stdc.h> #define endl \n using namespace std; long long int num; const int M…...
基于Vue2与3版本的Element UI与Element Plus入门
基于Vue2与3版本的Element UI与Element Plus入门 Element UI 入门安装引入 Element UI使用组件 Element Plus 入门安装引入 Element Plus使用组件 常用组件自定义主题兼容性和升级社区和支持 Element UI 入门 Element UI 是基于 Vue 2.0 的桌面端组件库,它提供了一…...
Mysql数据库创建自增序列
创建序列表 CREATE TABLE sequence (name varchar(50) NOT NULL,current_value bigint(30) NOT NULL,increment int(11) NOT NULL DEFAULT 1 ) ENGINEInnoDB DEFAULT CHARSETutf8 ROW_FORMATDYNAMIC COMMENT序列表;创建函数 查询当前序列名的序列值 CREATE DEFINERroot% FUNC…...
macOS上用Qt creator编译并跑shotcut
1 简介 Shotcut是一个开源的跨平台的视频编辑软件,支持WIN/MACOS/LINUX等平台,由于该项目的编译较为麻烦,踩坑几许,因此写此文章记录完整编译构建过程,后续按此法编译,可减少走弯路,提高生产力。…...
基于高光谱数据集的创新点实现-高斯核函数卷积神经网络
一、高光谱数据集简介 1.1 数据集简介 数据集链接在这:高光谱数据集(.mat.csv)-科研学术 数据集包含下面三个文件: 文件中包含.mat与.csv,145x145x220, 其实主要使用avirissub.csv文件,在代码上只是将mat文件转成了csv文件。具体avirissub.csv如下&am…...
【python 进阶】 绘图
1. 将多个柱状绘制在一个图中 import seaborn as sns import matplotlib.pyplot as plt import numpy as np import pandas as pd# 创建示例数据 categories [A, B, C, D, E] values1 np.random.randint(1, 10, sizelen(categories)) values2 np.random.randint(1, 10, siz…...
memblock_free_all释放page到buddy,前后nr_free的情况
https://www.cnblogs.com/tolimit/p/5287801.html 在zone_sizes_init 之后,各个node,zone的page总数已知。但是此时的每个order的空闲链表是空的,也就是无法通过alloc_page这种接口来分配。此时page还在memblock管控,需要memblock…...
Django实现websocket
Django实现websocket WebSocket功能使用介绍安装配置WebSocket接口--消息接收者的实现scope通道层 channel layer部署Web客户端连接Mac客户端 WebSocket功能 WebSocket长连接一般用于实现实时功能,例如web端的消息通知、会话等场景。 使用 WebSocket 向 Django 项…...
先进制造aps专题九 中国aps行业分析
国外aps的问题是不给国内客户定制算法 国外aps的算法都很强大,考虑几百个约束条件,各种复杂的工序关系,还有副资源约束特殊规格约束,排程还优化,光c写的算法代码就几十万行甚至上百万行 国内aps的问题是实现不了复杂的…...
力扣hot100:23. 合并 K 个升序链表
23. 合并 K 个升序链表 这题非常容易想到归并排序的思路,俩升序序列合并,可以使用归并的方法。 不过这里显然是一个多路归并排序;包含多个子数组的归并算法,这可以让我们拓展归并算法的思路。 假设n是序列个数,ni是…...
Lightweight Robust Size Aware Cache Management——论文泛读
TOC 2022 Paper 论文阅读笔记整理 问题 现代键值存储、对象存储、互联网代理缓存和内容交付网络(CDN)通常管理不同大小的对象,例如,Blob、不同长度的视频文件、不同分辨率的图像和小文件。在这种工作负载中,大小感知…...
搜索自动补全-elasticsearch实现
1. elasticsearch准备 1.1 拼音分词器 github地址:https://github.com/infinilabs/analysis-pinyin/releases?page6 必须与elasticsearch的版本相同 第四步,重启es docker restart es1.2 定义索引库 PUT /app_info_article {"settings": …...
连接远程的kafka【linux】
# 连接远程的kafka【linux】 前言版权推荐连接远程的kafka【linux】一、开放防火墙端口二、本地测试是否能访问端口三、远程kafka配置四、开启远程kakfa五、本地测试能否连接远程六、SpringBoot测试连接 遇到的问题最后 前言 2024-5-14 18:45:48 以下内容源自《【linux】》 仅…...
简单的 Cython 示例
1, pyx文件 fibonacci.pyx def fibonacci_old(n):if n < 0:return 0elif n 1:return 1else:return fibonacci_old(n-1) fibonacci_old(n-2) 2,setup.py setup.py from setuptools import setup from Cython.Build import cythonizesetup(ext_mod…...
MediaPipe模型离线部署与本地Demo实战指南
1. MediaPipe模型离线部署全攻略 遇到MediaPipe模型下载失败的问题,相信不少开发者都踩过这个坑。特别是在内网环境或者网络不稳定的情况下,官方自动下载功能经常无法正常工作。我去年在给某制造企业部署智能质检系统时就遇到过类似情况,他们…...
智能客服VS语音转写:不同场景下语音识别评估指标的选择指南
智能客服与语音转写:业务场景驱动的语音识别评估指标决策框架 当企业考虑部署语音识别系统时,技术团队常会抛出一堆专业术语:WER 15%、CER 8%、SER 22%...但对产品经理和解决方案架构师而言,这些数字背后意味着什么?选…...
告别手动配置:用快马AI生成openclaw自动化安装与环境管理脚本
作为一名经常需要配置各种开发环境的程序员,我深刻体会到手动安装工具的繁琐。最近在搭建一个爬虫项目时需要用到openclaw,发现传统安装方式存在几个明显的效率痛点: 版本查找耗时:需要反复在官网和文档间切换,确认最…...
Pikachu靶场实战:File Inclusion漏洞从入门到精通(附防御代码)
Pikachu靶场实战:File Inclusion漏洞攻防全解析 在网络安全领域,文件包含漏洞(File Inclusion)一直是Web应用渗透测试中的高频发现项。这种看似简单的漏洞类型,却能导致服务器敏感信息泄露甚至完全沦陷。Pikachu靶场作…...
为什么你的Ubuntu实时内核编译失败了?PREEMPT_RT补丁的5个关键配置解析
为什么你的Ubuntu实时内核编译失败了?PREEMPT_RT补丁的5个关键配置解析 在工业自动化、机器人控制和金融交易等对延迟敏感的领域,毫秒级的响应差异可能直接影响系统可靠性。许多开发者选择Ubuntu搭配PREEMPT_RT补丁构建实时系统,却在编译阶段…...
dfs经典例题——迷宫问题(利用二维数组优化方向判断)
思路:首先关于方向问题,我们可以设定一个默认方向,比如先默认向右,触底向下,然后再是向左向上。只需要平行在dfs函数中即可,每次递归会自动依次按照if条件进行合适方向的查找初始量:地图数组&am…...
TOAST UI Chart缩放功能完全指南:如何快速实现数据深入探索
TOAST UI Chart缩放功能完全指南:如何快速实现数据深入探索 【免费下载链接】tui.chart 🍞📊 Beautiful chart for data visualization. 项目地址: https://gitcode.com/gh_mirrors/tu/tui.chart TOAST UI Chart是一款功能强大的数据可…...
探索marked:高性能Markdown解析的Web开发工具解决方案
探索marked:高性能Markdown解析的Web开发工具解决方案 【免费下载链接】marked A markdown parser and compiler. Built for speed. 项目地址: https://gitcode.com/gh_mirrors/ma/marked 在现代Web开发中,Markdown解析作为内容呈现的关键环节&am…...
实战应用:基于快马平台开发企业内网服务可用性监控系统
今天想和大家分享一个最近用InsCode(快马)平台快速实现的实用项目——企业内网服务可用性监控系统。这个需求来源于我们公司内部的实际痛点:随着服务器数量增加,经常出现某个服务端口异常但没人及时发现的情况。 1. 项目背景与需求分析 我们公司有几十…...
Android 11+ 适配实战:破解TextToSpeech ‘speak failed: not bound to TTS engine‘ 的权限与引擎绑定之谜
1. 当语音突然沉默:Android 11的TTS报错之谜 那天我正在调试一个天气预报应用,当代码执行到语音播报"今天晴转多云"时,控制台突然抛出红字警告:speak failed: not bound to TTS engine。这个错误在Android 10及以下版本…...
