🌈write in front🌈
🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.
🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如需转载还请通知⚠️
📝个人主页:Aileen_0v0🧸—CSDN博客
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝
📣系列专栏:Aileen_0v0🧸的JAVA学习系列专栏🌸——CSDN博客
🗼我的格言:"没有罗马,那就自己创造罗马💫~"
回顾💫
上次学了 Java 中的数据类型long - Long 和 double - Double float - Float.如果有遗忘或者是感兴趣的小伙伴可以点击链接👉🔗http://t.csdnimg.cn/zIftT进行跳转阅读.今天我们来学习 其它数据类型
目录
回顾💫
💠Unicode和ASCII的介绍和区别
💠JAVA中 字符常量 和 字符串常量的区别和用法
💠字符数据类型-char-Character
💠字节数据类型-byte-Byte
💠短整型数据类型-short-Short
💠布尔类型数据类型 -boolean-Boolean
💠JAVA中的 转义字符 及 作用
🔺Summary
💠Unicode和ASCII的介绍和区别
Unicode和ASCII都是字符编码标准,它们的区别在于编码范围和长度。
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是一种七位编码,用于表示英文字母、数字和一些特殊字符,共计128个字符。ASCII取值范围为0~127。
Unicode是一种多字节字符集,它的范围更广泛,可以表示世界上所有的字符,包括各个语言的文字、符号以及图形符号等,共计136,755个字符。Unicode可以使用UTF-8、UTF-16等不同的编码方式表示,其中UTF-8是一种可变长编码,可以根据不同的字符来使用不同的字节数表示,为了支持更多的字符,UTF-8的编码长度可以达到4字节。
因此,ASCII适用于英文字符和一些特殊字符的编码,而Unicode则适用于全球范围内所有语言文字和符号的编码。
也就是说Unicode 包含了 ASCII 和 其它语言编码 适用范围更广.
💠JAVA中 字符常量 和 字符串常量的区别和用法
JAVA中字符常量是一个单独的字符,用单引号(')表示
而字符串常量则是多个字符构成的字符串,用双引号(")表示。
使用条件和规则如下:
1.字符常量必须用单引号(')括起来,只能包含一个字符,
字符串常量必须用双引号(")括起来,可以包含多个字符。
2.字符常量在内存中只占用一个字节,
字符串常量占用多个字节,具体大小取决于字符串中字符的个数。
3.字符常量可以直接赋值给字符变量,例如:char c = 'a';
字符串常量必须用String类来定义,例如:String str = "Hello World";
4.字符常量可以与其他字符常量或者数值直接进行运算,例如:char c1 = 'a' + 1;
字符串常量只能与其他字符串常量进行运算(字符串拼接),例如:String str1 = "Hello" + " World";
5.访问字符串中的某个字符可以使用charAt()方法,例如:char c = str.charAt(0);
访问字符常量不需要使用特殊的方法。
总的来说,字符常量和字符串常量都是JAVA中表示字符的方式,但是它们在定义、使用、存储等方面有很大的区别。需要根据具体的需求来选择合适的类型。
💠字符数据类型-char-Character
package TestDemo;public class TestDemo {//字符数据类型 char 2字节 取值范围: 0 - 65535public static void main(String[] args) {char ch = 'a';System.out.println(ch);char ch2 = '猪';System.out.println(ch2);}
}
控制台运行结果:
注意:char是字符类型,所以没有负数.
💠字节数据类型-byte-Byte
package TestDemo;public class TestDemo {//字节Byte 1字节 取值范围: -128 - 127public static void main(String[] args) {byte b = 12;byte c = 21;System.out.println(b+" "+ c);System.out.println(Byte.MAX_VALUE);//最大值127 2^7-1System.out.println(Byte.MIN_VALUE);//最小值-128 2^8System.out.println(Byte.MAX_VALUE + 1);//默认以整型进行打印}
}
控制台运行结果:
从运行结果我们能看到System.out.println(Byte.MAX_VALUE + 1)输出结果为 128,这是为什么呢?
还记得我们之前的int 类型,当时我们将它的最大值加1就变成了它的最小值
但字符类型好像并非如此!
在Java中,当一个byte类型的变量与其他类型进行运算时,
会首先自动转换为int类型(取值范围是 -2^31 - 2^31 - 1),然后进行运算。
所以,当执行Byte.MAX_VALUE + 1
时,byte类型的最大值127会被提升为int类型,再与1相加,结果为128。最终输出结果为128。
package TestDemo;public class TestDemo {//字节Byte 1字节 取值范围: -128 - 127public static void main(String[] args) {System.out.println(Byte.MAX_VALUE);//最大值127 2^7-1System.out.println(Byte.MIN_VALUE);//最小值-128 2^8System.out.println(Byte.MAX_VALUE + 1);//默认以整型进行打印//System.out.println(Integer.MAX_VALUE);byte d = 127; // 2147483647int i = 2147483648;}
}
控制台运行结果:
当我们给字节类型数据赋值 通过控制台输出结果输出可知
每一种数据类型 在给它赋值的时候 一定不能超过他的范围~
💠短整型数据类型-short-Short
package TestDemo;public class TestDemo {/*** 短整型 : short 2字节 取值范围: -32768 - 32767* @param args*/public static void main(String[] args) {short sh =12;System.out.println(Short.MAX_VALUE);System.out.println(Short.MIN_VALUE);}}
控制台运行结果:
💠布尔类型数据类型 -boolean-Boolean
package TestDemo;public class TestDemo {public static void main(String[] args) {/*** 布尔类型:* 1.在JAVA中 布尔类型 没有明确的大小* 2.在JAVA中 布尔类型 只有两个取值 true 和 false* 3.在JAVA中 布尔类型 没有 所谓的 0是假 非0是真* 真 只有 true 假 只有 false* 4. Boolean*/boolean flg =true;System.out.println(flg);}
}
控制台运行结果:
💠JAVA中的 转义字符 及 作用
转义字符 | 解释 |
\n | 换行 |
\t | 水平制表符 |
\' | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
🔺Summary