课时14:字符型

简介: 课时14介绍了字符型(Char)在Java中的定义和使用。字符型使用单引号定义,可以与Int类型互相转换,获取字符的系统编码。例如,'A'的编码为65,'a'为97。大小写字母间相差32个编码单位,可用于大小写转换。Java中的Char支持中文字符,采用Unicode编码,确保了多语言字符的统一处理。示例代码展示了如何定义字符变量、输出其编码及保存中文字符。

课时14:字符型

字符型使用的是 Char 进行定义的,在 Java 之中使用“'”定义的内容就是一个字符。


范例:定义一个字符型变量

public class JavaDemo {
public static void main(string args[]) {
char c='B';//一个字符变量
System.out.println(c);
 }
}

在任何的编程语言之中,字符都可以与Int进行互相转换,也就是说这个时候字符中所描述的内容可以通过Int获取其内容对应的系统编码。就像大家都知道,最早的计算机是只使用0和1,当然,如果你能用它编程,那就更厉害了。

不过,同学们大多只能写出类似“11010”这样的代码,这已经是大师级别了。如果用0和1的数字来描述编码,肯定是很难理解的。

所以为了简化这些过程,我们使用一些数字,例如“110”和“101”,将它们视为数字来描述编码,可以通过Int类型获取编码。


范例:观察Char与Int的关系

public class JavaDemo {
public static void main(string args[]) {
char c='B';//一个字符变量
System.out.println(c);
 }
}

image.png

对于以上的程序获得了编码,这里面有几个范围的需要注意一下:


大写字母范围“: 'A'(65)~'Z'(90);


image.png


“小写字母范围”:'a'( 97)~'z'(122);


image.png

image.png

 

“数字范围”:'0'(48)~'9'(57)


image.png

image.png

 

通过编码范围可以发现大小写字母之间差了32个数字的长度,在这样的情况下就可以实现一个大小写的转换处理。


范例:将小写字母变为大写字母

public class JavaDemo {
public static void main(string args[]) {
char c='x';//一个字符变量
int num = c;//可以获得字符的编码
num = num-32;//让自己的内容减少32
System.out.println((char)num);
 }
}

image.png

到此为止所有的这个叫操作都与传统的C语言的方方式是一样的,但是需要注意的是,在 Java 里面 Char主要是进行中文的处理,一定要记住,Java中的Char类型可以保存中文数据。


范例:保存中文数据

public class JavaDemo {
public static void main(string args[]) {
char c='仁';//一个字符变量
int num = c;//可以获得字符的编码
System.out.println(num);
 }
}

image.png

之所以在 Java 语言里面可以使用 Char 进行中文数据的保存,是因为 Java 使用的是 Unicode 这种16进制的编码,这种编码的主要特点是可以包括任意的文字内容,所以使得程序开发更加的简单。

举个例子,当你看到一篇非常长的文章时,通常需要将其切分并换行。最初,因为切分文字比较麻烦。比如说,大家都知道一个字母占一个字节,而一个字符占两个字节。如果按字节切分,字母和中文的切分方式不同,字母可以准确切分,但中文可能会被切成两半,导致乱码。你是否需要先判断它是否是正常值,如果是正常值再切分,否则就需要向前或向后调整。其实就像 Word 中的自动换行功能,当你写满一行时,它会自动换行并调整格式,你注意到了吗?

因此, Java 采用了基于16进制的编码方式。这使得我们在存储中文时更加方便,这也是 Unicode 的主要作用。因此,在今后的学习中,大家会发现所有操作方法都适用于各种数据操作,因为其编码是统一的。这就是为什么在描述中文时一定要使用 Char 。

相关文章
|
8月前
|
Java
课时103:生成jar文件
本文介绍了Java中生成和使用JAR文件的基本概念与操作。JAR文件用于将多个类文件打包成一个压缩文件,便于管理和分发。通过JDK提供的`jar`命令可以创建JAR文件,并可通过设置CLASSPATH环境变量来配置和使用这些文件。文中还演示了如何定义、编译和打包一个简单的Java程序为JAR文件,并详细解释了JAR文件的结构及配置方法。此外,简要提及了JDK 1.9后引入的模块化系统对JAR文件的影响。
192 1
|
9月前
|
监控 搜索推荐 数据挖掘
销售全流程管理:CRM 行业的线索到商机转化秘籍
在当今竞争激烈的商业环境中,CRM行业正经历深刻变革。企业要脱颖而出,需提升销售全流程管理效率,尤其是从线索到商机的全流程管理和数字化运营。通过线索评估、重点跟进和商机转化等环节精细化管理,结合自动化线索分配、实时数据监控及数据分析预测等数字化工具,企业能显著提高销售效率与业绩,实现持续增长,在市场中立于不败之地。
|
Linux iOS开发 MacOS
【chat-gpt问答记录】python虚拟环境venv的简介及使用
【chat-gpt问答记录】python虚拟环境venv的简介及使用
240 2
|
10月前
|
人工智能 安全 调度
《鸿蒙NEXT端云垂直整合架构——算力协同调度的智慧引擎》
鸿蒙NEXT通过创新的端云垂直整合架构,实现硬件与云端深度融合,支持高效的算力协同调度。该架构具备智能的算力感知与分配能力,能根据任务需求灵活调配端侧和云端资源,确保实时性和高性能。同时,端云协同的模型训练与优化机制加快了模型迭代,提升了性能。此外,星盾安全架构保障了数据传输和算力调度的安全可靠性。这不仅为用户带来智能、流畅的体验,也为开发者提供了高效开发环境,推动AI技术在鸿蒙生态中的广泛应用。
303 18
|
11月前
|
供应链 数据可视化 数据挖掘
企业信息化管理要了解的十种系统
信息化不仅是技术的引入,更是企业战略的重要组成部分,贯穿于企业的每一个环节,确保企业在复杂多变的市场中灵活应对、持续发展。
687 6
企业信息化管理要了解的十种系统
|
11月前
|
存储 机器学习/深度学习 人工智能
《量子AI:突破量子比特稳定性与容错性的关键瓶颈》
量子计算的发展面临量子比特稳定性和容错性的关键挑战。量子纠错技术如表面码、Steane七量子比特颜色代码等,通过编码和解码提高可靠性。硬件设计选择超导或离子阱量子比特,结合低噪声器件减少干扰。量子噪声抑制技术优化环境,降低噪声影响。拓扑量子计算利用多体系统的拓扑性质实现天然容错。量子算法优化和AI技术助力,进一步提升抗干扰能力。尽管取得进展,但要实现大规模应用仍需克服诸多挑战。
277 13
|
Rust 安全 算法
揭秘Rust语言如何重塑区块链安全:打造坚不可摧的分布式账本新篇章!
【8月更文挑战第31天】自比特币诞生以来,区块链技术凭借其去中心化和不可篡改的特点备受关注。为了应对安全性挑战,Rust 语言凭借其内存安全特性逐渐成为区块链开发的优选。本文探讨了 Rust 如何助力区块链实现更安全的分布式账本。通过示例展示了 Rust 在避免内存泄漏、空指针引用及数据竞争等方面的优势,预示着 Rust 在高性能、高安全性需求的区块链应用中拥有广阔前景。
347 2
|
开发框架 Android开发 iOS开发
跨平台开发的双重奏:Xamarin在不同规模项目中的实战表现与成功故事解析
【8月更文挑战第31天】在移动应用开发领域,选择合适的开发框架至关重要。Xamarin作为一款基于.NET的跨平台解决方案,凭借其独特的代码共享和快速迭代能力,赢得了广泛青睐。本文通过两个案例对比展示Xamarin的优势:一是初创公司利用Xamarin.Forms快速开发出适用于Android和iOS的应用;二是大型企业借助Xamarin实现高性能的原生应用体验及稳定的后端支持。无论是资源有限的小型企业还是需求复杂的大公司,Xamarin均能提供高效灵活的解决方案,彰显其在跨平台开发领域的强大实力。
203 0
|
机器学习/深度学习 人工智能 算法
为什么ChatGPT等AI大模型都是基于Python开发?
为什么ChatGPT等AI大模型都是基于Python开发?
373 0
|
移动开发 安全 关系型数据库
黑客马拉松经验谈:一个周末你能做出有趣、有用的服务吗?
“黑客马拉松”(Hackathon),是黑客 + 马拉松(Hack + Marathon)的组合字,大致上就是几个人聚在一起以马拉松的方式进行一段长时间的 Hack 活动,像是台湾 Yahoo! 办过 Open Hack Day、台湾微软办过 HTML5 或 IE 浏览器的黑客松活动,这类型的活动,实际进行的时间从半天、一天到两天一夜的长度都有。
759 0
黑客马拉松经验谈:一个周末你能做出有趣、有用的服务吗?
下一篇
开通oss服务