Java基础篇--Character 类
Character 类是用来操作单个字符的,它将 char 值包装在一个对象中。
实际上,在 Java 中,char 是基本数据类型,而 Character 是 char 的包装类。通过 Character 类,可以使用一系列方法来操作字符。在创建 Character 对象时,可以使用 Character 类的构造方法来传入一个 char 值来初始化对象,如:
Character ch = new Character('a')。
此外,在某些情况下,Java 编译器会自动地进行装箱(将 char 转换为 Character)和拆箱(将 Character 转换为 char)操作。
例如,将一个char类型的参数传递给需要一个Character类型参数的方法时,那么编译器会自动地将char类型参数转换为Character对象。 这种特征称为装箱,反过来称为拆箱。
// 原始字符 'a' 装箱到 Character 对象 ch 中
Character ch = 'a';// 原始字符 'x' 用 test 方法装箱
// 返回拆箱的值到 'c'
char c = test('x');
转义序列
前面有反斜杠(\)的字符代表转义字符,它对编译器来说是有特殊含义的。
下面列表展示了Java的转义序列:
| 转义序列 | 描述 |
|---|---|
| \t | 在文中该处插入一个tab键 |
| \b | 在文中该处插入一个后退键 |
| \n | 在文中该处换行 |
| \r | 在文中该处插入回车 |
| \f | 在文中该处插入换页符 |
| \' | 在文中该处插入单引号 |
| \" | 在文中该处插入双引号 |
| \\ | 在文中该处插入反斜杠 |
实例
public class Main {public static void main(String[] args) {// 使用转义序列来插入特殊字符System.out.println("Hello\tWorld"); // 在 Hello 和 World 之间插入一个制表符(tab)System.out.println("Hello\bWorld"); // 在 Hello 后面插入一个后退键(backspace),删除了一个 'o'System.out.println("Hello\nWorld"); // 在 Hello 后面插入一个换行符(newline),换到下一行输出System.out.println("Hello\rWorld"); // 在 Hello 后面插入一个回车符(carriage return),将光标移到行首System.out.println("Hello\fWorld"); // 在 Hello 和 World 之间插入一个换页符(form feed),清空屏幕并开始新一页System.out.println("She said \'Hello\'"); // 在字符串中插入单引号,使用转义序列 \' 表示System.out.println("He said \"Hello\""); // 在字符串中插入双引号,使用转义序列 \" 表示System.out.println("C:\\Program Files\\Java"); // 在字符串中插入反斜杠,使用转义序列 \\ 表示两个反斜杠}
}
以上实例编译运行结果如下:
Hello World
HelloWorld
Hello
World
Hello
World
HelloWorld
She said 'Hello'
He said "Hello"
C:\Program Files\Java
Character 方法
以下是 Character 类的一些常用方法:
isLetter(char ch):检查字符是否为字母。isDigit(char ch):检查字符是否为数字。isWhitespace(char ch):检查字符是否为空白字符,如空格、制表符、换行符等。isUpperCase(char ch):检查字符是否为大写字母。isLowerCase(char ch):检查字符是否为小写字母。toUpperCase(char ch):将字符转换为大写形式。toLowerCase(char ch):将字符转换为小写形式。toString(char ch):将字符转换为字符串。isLetterOrDigit(char ch):检查字符是否为字母或数字。isJavaIdentifierStart(char ch):检查字符是否可以作为 Java 标识符的起始字符。isJavaIdentifierPart(char ch):检查字符是否可以作为 Java 标识符的部分字符。digit(char ch, int radix):将字符按照指定进制转换为对应的整数值。compare(char x, char y):比较两个字符的大小。
对于方法的完整列表,请参考的 java.lang.Character API 规范。
实例
public class Main {public static void main(String[] args) {char ch = 'A';// 检查字符是否为字母System.out.println(Character.isLetter(ch)); // 运行:true// 检查字符是否为数字System.out.println(Character.isDigit(ch)); // 运行:false// 检查字符是否为空白字符System.out.println(Character.isWhitespace(ch)); // 运行:false// 检查字符是否为大写字母System.out.println(Character.isUpperCase(ch)); // 运行:true// 检查字符是否为小写字母System.out.println(Character.isLowerCase(ch)); // 运行:false// 将字符转换为大写形式System.out.println(Character.toUpperCase(ch)); // 运行:A// 将字符转换为小写形式System.out.println(Character.toLowerCase(ch)); // 运行:a// 将字符转换为字符串System.out.println(Character.toString(ch)); // 运行:A// 检查字符是否为字母或数字System.out.println(Character.isLetterOrDigit(ch)); // 运行:true// 检查字符是否可以作为 Java 标识符的起始字符System.out.println(Character.isJavaIdentifierStart(ch)); // 运行:true// 检查字符是否可以作为 Java 标识符的部分字符System.out.println(Character.isJavaIdentifierPart(ch)); // 运行:true// 将字符按照指定进制转换为对应的整数值System.out.println(Character.digit(ch, 16)); // 运行:10// 比较两个字符的大小System.out.println(Character.compare('A', 'B')); // 运行:-1}
}
相关文章:
Java基础篇--Character 类
Character 类是用来操作单个字符的,它将 char 值包装在一个对象中。 实际上,在 Java 中,char 是基本数据类型,而 Character 是 char 的包装类。通过 Character 类,可以使用一系列方法来操作字符。在创建 Character 对…...
Flutter参考资料
Flutter 官网 : https://flutter.dev/ Flutter 插件下载地址 : https://pub.dev/packages Flutter 开发文档 : https://flutter.cn/docs ( 强烈推荐 ) 官方 GitHub 地址 : https://github.com/flutter Flutter 中文社区 : https://flutter.cn/ Flutter 实用教程 : https://flut…...
sed命令如何正确修改ini配置文件
需要保证key值的唯一性 function sed_key_value_file(){key$(echo "$1" | sed s/[\/&]/\\&/g)value$(echo "$2" | sed s/[\/&]/\\&/g)# 先删除原有的value,然后添加新的keyvaluesed -i -e "s#${key}.*#${key}${value}#&q…...
【新版系统架构补充】-信息系统基础知识
信息系统 信息系统的5个基本功能:输入、存储、处理、输出和控制 信息系统的分类(低级到高级):业务(数据)处理系统(TPS/DPS)、管理信息系统(MIS)、决策支持系…...
安防监控视频汇聚平台EasyCVR分发的FLV视频流在VLC中无法播放是什么原因?
众所周知,TSINGSEE青犀视频汇聚平台EasyCVR可支持多协议方式接入,包括主流标准协议国标GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。在视频流的处理与分发上,视频监控…...
前端遇到的面试题
1.水平垂直居中 绝对定位 transform position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);绝对定位 margin(子元素宽高知道的情况下) position:absolute; top:50%; left:50%; margin-top:-100px; margin-left:-100px;绝对定位 margin:auto position:a…...
abbitmq启动访问不了http://localhost:15672 通过修改服务登录admin
abbitmq默认的对Administration授权,而我的用户不是默认的Administration,所以后来打开服务,找到rabbitmq服务,属性,登陆,将本地系统账户修改为此账户,修改完成之后再重启服务,这时候…...
换架 3D 飞机,继续飞呀飞
相信大多数图扑 HT 用户都曾见过这个飞机的 Demo,在图扑发展的这十年,这个 Demo 是许多学习 HT 用户一定会参考的经典 Demo 之一。 这个 Demo 用简洁的代码生动地展示了 OBJ 模型加载、数据绑定、动画和漫游等功能的实现。许多用户参考这个简单的 Demo 后…...
js ?? || 使用方法
平时很常用的就是||,比如调用接口的时候,接口报错了需要给个默认值 const data(await getData())||{};今天遇到了一个场景,正常后端返回的就是false,如果接口报错要默认设置成true,但如果用了 || ,如下,那…...
i茅台自动申购算法协议分析
首发地址:http://zhuoyue360.com/crack/104.html 一、引言 今日看到有人分享了i茅台自动申购的文章。但是它酷似引流文章,全文一张图,呜呜呜。无法白嫖。太可恶了,因此,我来啦~ 我来整一整,我也要抢茅子! …...
【HarmonyOS】Java如何引用外部jar包
【关键字】 Java、引用jar包 【写在前面】 使用API6和API7开发HarmonyOS应用时,因为应用中只能引用SDK中开放的功能接口,但是部分jdk自带的接口功能在SDK中并未封装,要想在工程中使用jdk开放的接口功能,需要将jdk中的jar包通过…...
vue在线编辑表格导入导出
npm i file-saver npm i exceljs npm i luckyexcelindex.html (方式一在html中引入) <link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/luckysheetlatest/dist/plugins/css/pluginsCss.css /><link relstylesheet hrefhttps://cdn.jsde…...
监控Kafka的关键指标
Kafka 架构 上面绿色部分 PRODUCER(生产者)和下面紫色部分 CONSUMER(消费者)是业务程序,通常由研发人员埋点解决监控问题,如果是 Java 客户端也会暴露 JMX 指标。组件运维监控层面着重关注蓝色部分的 BROKE…...
React18 hook学习笔记
useState useState用于在函数组件中声明和管理状态 它接受初始状态,并返回一个状态变量和一个更新状态的函数 通过调用更新状态的函数,可以改变状态的值并触发组件的重新渲染 import { useState } from "react"function App() {const [obj, …...
Java038——正则表达式
一、认识正则表达式 正则表达式通常被用于判断语句中,用来检查某一字符串是否满足某一格式。正则表达式是含有一些具有特殊意义字符的字符串,这些特殊字符称为正则表达式的元字符。例如,“\d”表示数字 0~9 中的任何一个,“d”就…...
JavaScript元素选择器
目录 一、getElementsByTagName1.说明2.用法示例 二、getElementsByName1.说明2.用法示例 三、getElementById1.说明2.用法示例 四、getElementsByClassName1.说明2.用法示例 五、querySelector1.说明2.用法示例 六、querySelectorAll1.说明2.用法示例 七、综合示例 一、getEle…...
Docker安装 elasticsearch-head
目录 前言安装elasticsearch-head步骤1:准备1. 安装docker2. 搜索可以使用的镜像。3. 也可从docker hub上搜索镜像。4. 选择合适的redis镜像。 步骤2:拉取elasticsearch-head镜像拉取镜像查看已拉取的镜像 步骤3:创建容器创建容器方式1&#…...
交换排序——选择排序和冒泡排序的区别是什么?
今天重温一下算法,其实刚开始我觉得冒泡排序和选择排序是一样的,因为他们排序过程中都是通过相邻的数据比较找到最小/最大的数据,通过不断思考和学习才明白,两者还是有区别的。 冒泡排序 概念 冒泡排序(Bubble Sort)࿰…...
吉他谱:Melodies of Life - Final Fantasy Solo Guitar Collections
原始出处: Final Fantasy Solo Guitar Collections - 南泽大介改编的最终幻想9主题曲吉他谱 更多吉他谱: https://github.com/NaisuXu/Guitar_Sheet_Music_Collection...
微信小程序下拉刷新
小程序中的下拉刷新 - 掘金...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...
