大数据必学Java基础(十二):基本数据类型

2022-07-06 13:23:16 浏览数 (1)

​基本数据类型

Java是一种强类型语言,每个变量都必须声明其数据类型。

Java的数据类型可分为两大类:基本数据类型(primitive data type)和引用数据类型(reference data type)。

PS:巧妙记忆:除了基本数据类型以外的所有类型都属于引用数据类型,本章重点:基本数据类型

一、整数类型整

1、数类型常量

十进制整数,如:99, -500, 0

八进制整数,要求以 0 开头,如:015

十六进制数,要求 0x 或 0X 开头,如:0x15

二进制:要求0b或者0B开头,如:0b11

几进制:就是逢几进1的问题:

平时实际生活中用的最多的是:十进制

计算机用二进制最多

扩展:进制转换问题

【1】二进制转换为十进制:

二进制: 1101

1*2^3 1*2^2 0*2^1 1*2^0

= 8 4 0 1

= 13

【2】十进制转换为二进制:

十进制 13

【3】八进制转换十进制:

八进制: 16

1*8^1 6*8^0

= 8 6

=14

【4】十进制转换为八进制:

十进制14:

【5】八进制转换为十六进制:

把十进制当做一个中转站:

八进制---》十进制---》十六进制

实际上根本不用自己转换这么麻烦:我们可以直接用系统中提供给我们的计算器:

2、整数类型变量

整型数据类型:

比如:byte的右侧表数范围127怎么算出来的?

byte: 1字节 = 8位

二进制:01111111

1*2^6 1*2^5 1*2^4 1*2^3 1*2^2 1*2^1 1*2^0

= 64 32 16 8 4 2 1

= 127

代码:

代码语言:javascript复制
public class TestVar05{
        public static void main(String[] args){
                //定义整数类型的变量:
                //给变量赋值的时候,值可以为不同进制的:
                int num1 = 12 ;//默认情况下赋值就是十进制的情况
                System.out.println(num1);
                int num2 = 012;//前面加上0,这个值就是八进制的
                System.out.println(num2);
                int num3 = 0x12;//前面加上0x或者0X,这个值就是十六进制的
                System.out.println(num3);
                int num4 = 0b10;//前面加上0b或者0B,这个值就是二进制的
                System.out.println(num4);
                
                //定义byte类型的变量:
                byte b = 126;//定义了一个byte类型的变量,名字叫b,赋值为12
                System.out.println(b);
                //注意:超范围的赋值会报错。
                short s = 30000;
                System.out.println(s);
                int i = 1234;
                System.out.println(i);
                //整数类型默认就是int类型的,所以12345678910是一个int类型的数,对于int类型来说,它超出范围了
                //要想把一个数给long类型变量,那么后面加上L(推荐)或者l就可以了
                long num5 = 12345678910L;
                System.out.println(num5);
                //注意:只有这个数超出int类型的范围了后面才需要加上L,否则无需加L也可以赋值给long类型:
                long num6 = 12;
                System.out.println(num6);
                
        }
}

二、浮点类型

1、浮点类型常量

(1)十进制数形式,例如:

3.14 314.0 0.314

(2)科学记数法形式,如

314e2 314E2 (E的大小写没有区分) 314E-2

double f = 314e2; //314*10^2-->31400.0

double f2 = 314e-2; //314*10^(-2)-->3.14

2、浮点类型变量

float类型又被称作单精度类型,尾数可以精确到7位有效数字,在很多情况下,float类型的精度很难满足需求。

而double表示这种类型的数值精度约是float类型的两倍,又被称作双精度类型,绝大部分应用程序都采用double类型。

float类型的数值有一个后缀F或者f ,没有后缀F/f的浮点数值默认为double类型。

也可以在浮点数值后添加后缀D或者d, 以明确其为double类型。

PS:有效数字指的是从左开始第一个不为0的数到最后一个数

代码:

代码语言:javascript复制
public class TestVar06{
        public static void main(String[] args){
                //浮点类型的常量有两种形式:
                //十进制形式:
                double num1 = 3.14;
                System.out.println(num1);
                //科学计数法形式:
                double num2 = 314E-2;
                System.out.println(num2);
                
                //浮点类型的变量:
                //注意:浮点型默认是double类型的,要想将一个double类型的数赋给float类型,必须后面加上F或者f
                float f1 = 3.14234567898623F;
                System.out.println(f1);
                //注意:double类型后面可以加D或者d,但是一般我们都省略不写
                double d1 = 3.14234567898623D;
                System.out.println(d1);
                
                //注意:我们最好不要进行浮点类型的比较:
                float f2 = 0.3F;
                double d2 = 0.3;
                System.out.println(f2==d2);
                /*
                区别:
                = 赋值运算:  将等号右侧的值赋给等号左侧
                == 判断==左右两侧的值是否相等  :结果要么相等 要么不相等
                ==运算符的结果就是要么是true,要么是false
                */
                
        }
}

三、字符类型

【1】Java中使用单引号来表示字符常量,字符型在内存中占2个字节

char 类型用来表示在Unicode编码表中的字符。Unicode编码被设计用来处理各种语言的文字,它占2个字节,可允许有65536个字符。

【2】转义字符

【3】ASCII表

【4】Unicode编码表

Unicode编码表/0000-0FFF

图例: Unicode 3.1 Unicode 1.0 Unicode 3.2 Unicode 1.1 Unicode 4.0 Unicode 2.0 Unicode 4.1 Unicode 2.1 未使用 Unicode 3.0 不作编码

图例:

Unicode 3.1

Unicode 1.0

Unicode 3.2

Unicode 1.1

Unicode 4.0

Unicode 2.0

Unicode 4.1

Unicode 2.1

未使用

Unicode 3.0

不作编码

Unicode 编码表 0000-0FFF 8000-8FFF 10000-10FFF 20000-20FFF 28000-28FFF 1000-1FFF 9000-9FFF 21000-21FFF 29000-29FFF 2000-2FFF A000-AFFF 22000-22FFF 2A000-2AFFF 3000-3FFF B000-BFFF 23000-23FFF 4000-4FFF C000-CFFF 1D000-1DFFF 24000-24FFF 2F000-2FFFF 5000-5FFF D000-DFFF 25000-25FFF 6000-6FFF E000-EFFF 26000-26FFF 7000-7FFF F000-FFFF 27000-27FFF E0000-E0FFF

Unicode 编码表

0000-0FFF

8000-8FFF

10000-10FFF

20000-20FFF

28000-28FFF

1000-1FFF

9000-9FFF

21000-21FFF

29000-29FFF

2000-2FFF

A000-AFFF

22000-22FFF

2A000-2AFFF

3000-3FFF

B000-BFFF

23000-23FFF

4000-4FFF

C000-CFFF

1D000-1DFFF

24000-24FFF

2F000-2FFFF

5000-5FFF

D000-DFFF

25000-25FFF

6000-6FFF

E000-EFFF

26000-26FFF

7000-7FFF

F000-FFFF

27000-27FFF

E0000-E0FFF

图例:

Unicode 3.1

Unicode 1.0

Unicode 3.2

Unicode 1.1

Unicode 4.0

Unicode 2.0

Unicode 4.1

Unicode 2.1

未使用

Unicode 3.0

不作编码

Unicode 编码表

0000-0FFF

8000-8FFF

10000-10FFF

20000-20FFF

28000-28FFF

1000-1FFF

9000-9FFF

21000-21FFF

29000-29FFF

2000-2FFF

A000-AFFF

22000-22FFF

2A000-2AFFF

3000-3FFF

B000-BFFF

23000-23FFF

4000-4FFF

C000-CFFF

1D000-1DFFF

24000-24FFF

2F000-2FFFF

5000-5FFF

D000-DFFF

25000-25FFF

6000-6FFF

E000-EFFF

26000-26FFF

7000-7FFF

F000-FFFF

27000-27FFF

E0000-E0FFF

【Unicode 码表】

0000-007F:C0控制符及基本拉丁文 (C0 Control and Basic Latin) 0080-00FF:C1控制符及拉丁文补充-1 (C1 Control and Latin 1 Supplement) 0100-017F:拉丁文扩展-A (Latin Extended-A) 0180-024F:拉丁文扩展-B (Latin Extended-B) 0250-02AF:国际音标扩展 (IPA Extensions) 02B0-02FF:空白修饰字母 (Spacing Modifiers) 0300-036F:结合用读音符号 (Combining Diacritics Marks) 0370-03FF:希腊文及科普特文 (Greek and Coptic) 0400-04FF:西里尔字母 (Cyrillic) 0500-052F:西里尔字母补充 (Cyrillic Supplement) 0530-058F:亚美尼亚语 (Armenian) 0590-05FF:希伯来文 (Hebrew) 0600-06FF:阿拉伯文 (Arabic) 0700-074F:叙利亚文 (Syriac) 0750-077F:阿拉伯文补充 (Arabic Supplement) 0780-07BF:马尔代夫语 (Thaana) 07C0-077F:西非書面語言 (N'Ko) 0800-085F:阿维斯塔语及巴列维语 (Avestan and Pahlavi) 0860-087F:Mandaic 0880-08AF:撒马利亚语 (Samaritan) 0900-097F:天城文书 (Devanagari) 0980-09FF:孟加拉语 (Bengali) 0A00-0A7F:锡克教文 (Gurmukhi) 0A80-0AFF:古吉拉特文 (Gujarati) 0B00-0B7F:奥里亚文 (Oriya) 0B80-0BFF:泰米尔文 (Tamil) 0C00-0C7F:泰卢固文 (Telugu) 0C80-0CFF:卡纳达文 (Kannada) 0D00-0D7F:德拉维族语 (Malayalam) 0D80-0DFF:僧伽罗语 (Sinhala) 0E00-0E7F:泰文 (Thai) 0E80-0EFF:老挝文 (Lao) 0F00-0FFF:藏文 (Tibetan) 1000-109F:缅甸语 (Myanmar) 10A0-10FF:格鲁吉亚语 (Georgian) 1100-11FF:朝鲜文 (Hangul Jamo) 1200-137F:埃塞俄比亚语 (Ethiopic) 1380-139F:埃塞俄比亚语补充 (Ethiopic Supplement) 13A0-13FF:切罗基语 (Cherokee) 1400-167F:统一加拿大土著语音节 (Unified Canadian Aboriginal Syllabics) 1680-169F:欧甘字母 (Ogham) 16A0-16FF:如尼文 (Runic) 1700-171F:塔加拉语 (Tagalog) 1720-173F:Hanunóo 1740-175F:Buhid 1760-177F:Tagbanwa 1780-17FF:高棉语 (Khmer) 1800-18AF:蒙古文 (Mongolian) 18B0-18FF:Cham 1900-194F:Limbu 1950-197F:德宏泰语 (Tai Le) 1980-19DF:新傣仂语 (New Tai Lue) 19E0-19FF:高棉语记号 (Kmer Symbols) 1A00-1A1F:Buginese 1A20-1A5F:Batak 1A80-1AEF:Lanna 1B00-1B7F:巴厘语 (Balinese) 1B80-1BB0:巽他语 (Sundanese) 1BC0-1BFF:Pahawh Hmong 1C00-1C4F:雷布查语(Lepcha) 1C50-1C7F:Ol Chiki 1C80-1CDF:曼尼普尔语 (Meithei/Manipuri) 1D00-1D7F:语音学扩展 (Phonetic Extensions) 1D80-1DBF:语音学扩展补充 (Phonetic Extensions Supplement) 1DC0-1DFF:结合用读音符号补充 (Combining Diacritics Marks Supplement) 1E00-1EFF:拉丁文扩充附加 (Latin Extended Additional) 1F00-1FFF:希腊语扩充 (Greek Extended) 2000-206F:常用标点 (General Punctuation) 2070-209F:上标及下标 (Superscripts and Subscripts) 20A0-20CF:货币符号 (Currency Symbols) 20D0-20FF:组合用记号 (Combining Diacritics Marks for Symbols) 2100-214F:字母式符号 (Letterlike Symbols) 2150-218F:数字形式 (Number Form) 2190-21FF:箭头 (Arrows) 2200-22FF:数学运算符 (Mathematical Operator) 2300-23FF:杂项工业符号 (Miscellaneous Technical) 2400-243F:控制图片 (Control Pictures) 2440-245F:光学识别符 (Optical Character Recognition) 2460-24FF:封闭式字母数字 (Enclosed Alphanumerics) 2500-257F:制表符 (Box Drawing) 2580-259F:方块元素 (Block Element) 25A0-25FF:几何图形 (Geometric Shapes) 2600-26FF:杂项符号 (Miscellaneous Symbols) 2700-27BF:印刷符号 (Dingbats) 27C0-27EF:杂项数学符号-A (Miscellaneous Mathematical Symbols-A) 27F0-27FF:追加箭头-A (Supplemental Arrows-A) 2800-28FF:盲文点字模型 (Braille Patterns) 2900-297F:追加箭头-B (Supplemental Arrows-B) 2980-29FF:杂项数学符号-B (Miscellaneous Mathematical Symbols-B) 2A00-2AFF:追加数学运算符 (Supplemental Mathematical Operator) 2B00-2BFF:杂项符号和箭头 (Miscellaneous Symbols and Arrows) 2C00-2C5F:格拉哥里字母 (Glagolitic) 2C60-2C7F:拉丁文扩展-C (Latin Extended-C) 2C80-2CFF:古埃及语 (Coptic) 2D00-2D2F:格鲁吉亚语补充 (Georgian Supplement) 2D30-2D7F:提非纳文 (Tifinagh) 2D80-2DDF:埃塞俄比亚语扩展 (Ethiopic Extended) 2E00-2E7F:追加标点 (Supplemental Punctuation) 2E80-2EFF:CJK 部首补充 (CJK Radicals Supplement) 2F00-2FDF:康熙字典部首 (Kangxi Radicals) 2FF0-2FFF:表意文字描述符 (Ideographic Description Characters) 3000-303F:CJK 符号和标点 (CJK Symbols and Punctuation) 3040-309F:日文平假名 (Hiragana) 30A0-30FF:日文片假名 (Katakana) 3100-312F:注音字母 (Bopomofo) 3130-318F:朝鲜文兼容字母 (Hangul Compatibility Jamo) 3190-319F:象形字注释标志 (Kanbun) 31A0-31BF:注音字母扩展 (Bopomofo Extended) 31C0-31EF:CJK 笔画 (CJK Strokes) 31F0-31FF:日文片假名语音扩展 (Katakana Phonetic Extensions) 3200-32FF:封闭式 CJK 文字和月份 (Enclosed CJK Letters and Months) 3300-33FF:CJK 兼容 (CJK Compatibility) 3400-4DBF:CJK 统一表意符号扩展 A (CJK Unified Ideographs Extension A) 4DC0-4DFF:易经六十四卦符号 (Yijing Hexagrams Symbols) 4E00-9FBF:CJK 统一表意符号 (CJK Unified Ideographs) A000-A48F:彝文音节 (Yi Syllables) A490-A4CF:彝文字根 (Yi Radicals) A500-A61F:Vai A660-A6FF:统一加拿大土著语音节补充 (Unified Canadian Aboriginal Syllabics Supplement) A700-A71F:声调修饰字母 (Modifier Tone Letters) A720-A7FF:拉丁文扩展-D (Latin Extended-D) A800-A82F:Syloti Nagri A840-A87F:八思巴字 (Phags-pa) A880-A8DF:Saurashtra A900-A97F:爪哇语 (Javanese) A980-A9DF:Chakma AA00-AA3F:Varang Kshiti AA40-AA6F:Sorang Sompeng AA80-AADF:Newari AB00-AB5F:越南傣语 (Vi?t Thái) AB80-ABA0:Kayah Li AC00-D7AF:朝鲜文音节 (Hangul Syllables) D800-DBFF:High-half zone of UTF-16 DC00-DFFF:Low-half zone of UTF-16 E000-F8FF:自行使用區域 (Private Use Zone) F900-FAFF:CJK 兼容象形文字 (CJK Compatibility Ideographs) FB00-FB4F:字母表達形式 (Alphabetic Presentation Form) FB50-FDFF:阿拉伯表達形式A (Arabic Presentation Form-A) FE00-FE0F:变量选择符 (Variation Selector) FE10-FE1F:竖排形式 (Vertical Forms) FE20-FE2F:组合用半符号 (Combining Half Marks) FE30-FE4F:CJK 兼容形式 (CJK Compatibility Forms) FE50-FE6F:小型变体形式 (Small Form Variants) FE70-FEFF:阿拉伯表達形式B (Arabic Presentation Form-B) FF00-FFEF:半型及全型形式 (Halfwidth and Fullwidth Form) FFF0-FFFF:特殊 (Specials)

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0000

NUL

SOH

STX

ETX

EOT

ENQ

ACK

BEL

BS

HT

LF

VT

FF

CR

SO

SI

0010

DLE

DC1

DC2

DC3

DC4

NAK

SYN

ETB

CAN

EM

SUB

ESC

FS

GS

RS

US

0020

!

"

#

$

%

&

'

(

)

*

,

-

.

/

0030

0

1

2

3

4

5

6

7

8

9

:

;

<

=

>

?

0040

@

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

0050

P

Q

R

S

T

U

V

W

X

Y

Z

[

]

^

_

0060

`

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

0070

p

q

r

s

t

u

v

w

x

y

z

{

|

}

~

DEL

0080

PAD

HOP

BPH

NBH

IND

NEL

SSA

ESA

HTS

HTJ

VTS

PLD

PLU

RI

SS2

SS3

0090

DCS

PU1

PU2

STS

CCH

MW

SPA

EPA

SOS

SGCI

SCI

CSI

ST

OSC

PM

APC

00A0

NBSP

¡

¢

£

¤

¥

¦

§

¨

©

ª

«

¬

SHY

®

¯

00B0

°

±

²

³

´

µ

·

¸

¹

º

»

¼

½

¾

¿

00C0

À

Á

Â

Ã

Ä

Å

Æ

Ç

È

É

Ê

Ë

Ì

Í

Î

Ï

00D0

Ð

Ñ

Ò

Ó

Ô

Õ

Ö

×

Ø

Ù

Ú

Û

Ü

Ý

Þ

ß

00E0

à

á

â

ã

ä

å

æ

ç

è

é

ê

ë

ì

í

î

ï

00F0

ð

ñ

ò

ó

ô

õ

ö

÷

ø

ù

ú

û

ü

ý

þ

ÿ

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0100

Ā

ā

Ă

ă

Ą

ą

Ć

ć

Ĉ

ĉ

Ċ

ċ

Č

č

Ď

ď

0110

Đ

đ

Ē

ē

Ĕ

ĕ

Ė

ė

Ę

ę

Ě

ě

Ĝ

ĝ

Ğ

ğ

0120

Ġ

ġ

Ģ

ģ

Ĥ

ĥ

Ħ

ħ

Ĩ

ĩ

Ī

ī

Ĭ

ĭ

Į

į

0130

İ

ı

IJ

ij

Ĵ

ĵ

Ķ

ķ

ĸ

Ĺ

ĺ

Ļ

ļ

Ľ

ľ

Ŀ

0140

ŀ

Ł

ł

Ń

ń

Ņ

ņ

Ň

ň

ʼn

Ŋ

ŋ

Ō

ō

Ŏ

ŏ

0150

Ő

ő

Œ

œ

Ŕ

ŕ

Ŗ

ŗ

Ř

ř

Ś

ś

Ŝ

ŝ

Ş

ş

0160

Š

š

Ţ

ţ

Ť

ť

Ŧ

ŧ

Ũ

ũ

Ū

ū

Ŭ

ŭ

Ů

ů

0170

Ű

ű

Ų

ų

Ŵ

ŵ

Ŷ

ŷ

Ÿ

Ź

ź

Ż

ż

Ž

ž

ſ

0180

ƀ

Ɓ

Ƃ

ƃ

Ƅ

ƅ

Ɔ

Ƈ

ƈ

Ɖ

Ɗ

Ƌ

ƌ

ƍ

Ǝ

Ə

0190

Ɛ

Ƒ

ƒ

Ɠ

Ɣ

ƕ

Ɩ

Ɨ

Ƙ

ƙ

ƚ

ƛ

Ɯ

Ɲ

ƞ

Ɵ

01A0

Ơ

ơ

Ƣ

ƣ

Ƥ

ƥ

Ʀ

Ƨ

ƨ

Ʃ

ƪ

ƫ

Ƭ

ƭ

Ʈ

Ư

01B0

ư

Ʊ

Ʋ

Ƴ

ƴ

Ƶ

ƶ

Ʒ

Ƹ

ƹ

ƺ

ƻ

Ƽ

ƽ

ƾ

ƿ

01C0

ǀ

ǁ

ǂ

ǃ

DŽ

Dž

dž

LJ

Lj

lj

NJ

Nj

nj

Ǎ

ǎ

Ǐ

01D0

ǐ

Ǒ

ǒ

Ǔ

ǔ

Ǖ

ǖ

Ǘ

ǘ

Ǚ

ǚ

Ǜ

ǜ

ǝ

Ǟ

ǟ

01E0

Ǡ

ǡ

Ǣ

ǣ

Ǥ

ǥ

Ǧ

ǧ

Ǩ

ǩ

Ǫ

ǫ

Ǭ

ǭ

Ǯ

ǯ

01F0

ǰ

DZ

Dz

dz

Ǵ

ǵ

Ƕ

Ƿ

Ǹ

ǹ

Ǻ

ǻ

Ǽ

ǽ

Ǿ

ǿ

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0200

Ȁ

ȁ

Ȃ

ȃ

Ȅ

ȅ

Ȇ

ȇ

Ȉ

ȉ

Ȋ

ȋ

Ȍ

ȍ

Ȏ

ȏ

0210

Ȑ

ȑ

Ȓ

ȓ

Ȕ

ȕ

Ȗ

ȗ

Ș

ș

Ț

ț

Ȝ

ȝ

Ȟ

ȟ

0220

Ƞ

ȡ

Ȣ

ȣ

Ȥ

ȥ

Ȧ

ȧ

Ȩ

ȩ

Ȫ

ȫ

Ȭ

ȭ

Ȯ

ȯ

0230

Ȱ

ȱ

Ȳ

ȳ

ȴ

ȵ

ȶ

ȷ

ȸ

ȹ

Ⱥ

Ȼ

ȼ

Ƚ

Ⱦ

ȿ

0240

ɀ

Ɂ

0250

ɐ

ɑ

ɒ

ɓ

ɔ

ɕ

ɖ

ɗ

ɘ

ə

ɚ

ɛ

ɜ

ɝ

ɞ

ɟ

0260

ɠ

ɡ

ɢ

ɣ

ɤ

ɥ

ɦ

ɧ

ɨ

ɩ

ɪ

ɫ

ɬ

ɭ

ɮ

ɯ

0270

ɰ

ɱ

ɲ

ɳ

ɴ

ɵ

ɶ

ɷ

ɸ

ɹ

ɺ

ɻ

ɼ

ɽ

ɾ

ɿ

0280

ʀ

ʁ

ʂ

ʃ

ʄ

ʅ

ʆ

ʇ

ʈ

ʉ

ʊ

ʋ

ʌ

ʍ

ʎ

ʏ

0290

ʐ

ʑ

ʒ

ʓ

ʔ

ʕ

ʖ

ʗ

ʘ

ʙ

ʚ

ʛ

ʜ

ʝ

ʞ

ʟ

02A0

ʠ

ʡ

ʢ

ʣ

ʤ

ʥ

ʦ

ʧ

ʨ

ʩ

ʪ

ʫ

ʬ

ʭ

ʮ

ʯ

02B0

ʰ

ʱ

ʲ

ʳ

ʴ

ʵ

ʶ

ʷ

ʸ

ʹ

ʺ

ʻ

ʼ

ʽ

ʾ

ʿ

02C0

ˀ

ˁ

˂

˃

˄

˅

ˆ

ˇ

ˈ

ˉ

ˊ

ˋ

ˌ

ˍ

ˎ

ˏ

02D0

ː

ˑ

˒

˓

˔

˕

˖

˗

˘

˙

˚

˛

˜

˝

˞

˟

02E0

ˠ

ˡ

ˢ

ˣ

ˤ

˥

˦

˧

˨

˩

˪

˫

ˬ

˭

ˮ

˯

02F0

˰

˱

˲

˳

˴

˵

˶

˷

˸

˹

˺

˻

˼

˽

˾

˿

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0300

̀

́

̂

̃

̄

̅

̆

̇

̈

̉

̊

̋

̌

̍

̎

̏

0310

̐

̑

̒

̓

̔

̕

̖

̗

̘

̙

̚

̛

̜

̝

̞

̟

0320

̠

̡

̢

̣

̤

̥

̦

̧

̨

̩

̪

̫

̬

̭

̮

̯

0330

̰

̱

̲

̳

̴

̵

̶

̷

̸

̹

̺

̻

̼

̽

̾

̿

0340

̀

́

͂

̓

̈́

ͅ

͆

͇

͈

͉

͊

͋

͌

͍

͎

CGJ

0350

͐

͑

͒

͓

͔

͕

͖

͗

͘

͙

͚

͛

͜

͝

͞

͟

0360

͠

͡

͢

ͣ

ͤ

ͥ

ͦ

ͧ

ͨ

ͩ

ͪ

ͫ

ͬ

ͭ

ͮ

ͯ

0370

ʹ

͵

ͺ

;

0380

΄

΅

Ά

·

Έ

Ή

Ί

Ό

Ύ

Ώ

0390

ΐ

Α

Β

Γ

Δ

Ε

Ζ

Η

Θ

Ι

Κ

Λ

Μ

Ν

Ξ

Ο

03A0

Π

Ρ

Σ

Τ

Υ

Φ

Χ

Ψ

Ω

Ϊ

Ϋ

ά

έ

ή

ί

03B0

ΰ

α

β

γ

δ

ε

ζ

η

θ

ι

κ

λ

μ

ν

ξ

ο

03C0

π

ρ

ς

σ

τ

υ

φ

χ

ψ

ω

ϊ

ϋ

ό

ύ

ώ

03D0

ϐ

ϑ

ϒ

ϓ

ϔ

ϕ

ϖ

ϗ

Ϙ

ϙ

Ϛ

ϛ

Ϝ

ϝ

Ϟ

ϟ

03E0

Ϡ

ϡ

Ϣ

ϣ

Ϥ

ϥ

Ϧ

ϧ

Ϩ

ϩ

Ϫ

ϫ

Ϭ

ϭ

Ϯ

ϯ

03F0

ϰ

ϱ

ϲ

ϳ

ϴ

ϵ

϶

Ϸ

ϸ

Ϲ

Ϻ

ϻ

ϼ

Ͻ

Ͼ

Ͽ

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0400

Ѐ

Ё

Ђ

Ѓ

Є

Ѕ

І

Ї

Ј

Љ

Њ

Ћ

Ќ

Ѝ

Ў

Џ

0410

А

Б

В

Г

Д

Е

Ж

З

И

Й

К

Л

М

Н

О

П

0420

Р

С

Т

У

Ф

Х

Ц

Ч

Ш

Щ

Ъ

Ы

Ь

Э

Ю

Я

0430

а

б

в

г

д

е

ж

з

и

й

к

л

м

н

о

п

0440

р

с

т

у

ф

х

ц

ч

ш

щ

ъ

ы

ь

э

ю

я

0450

ѐ

ё

ђ

ѓ

є

ѕ

і

ї

ј

љ

њ

ћ

ќ

ѝ

ў

џ

0460

Ѡ

ѡ

Ѣ

ѣ

Ѥ

ѥ

Ѧ

ѧ

Ѩ

ѩ

Ѫ

ѫ

Ѭ

ѭ

Ѯ

ѯ

0470

Ѱ

ѱ

Ѳ

ѳ

Ѵ

ѵ

Ѷ

ѷ

Ѹ

ѹ

Ѻ

ѻ

Ѽ

ѽ

Ѿ

ѿ

0480

Ҁ

ҁ

҂

҃

҄

҅

҆

҈

҉

Ҋ

ҋ

Ҍ

ҍ

Ҏ

ҏ

0490

Ґ

ґ

Ғ

ғ

Ҕ

ҕ

Җ

җ

Ҙ

ҙ

Қ

қ

Ҝ

ҝ

Ҟ

ҟ

04A0

Ҡ

ҡ

Ң

ң

Ҥ

ҥ

Ҧ

ҧ

Ҩ

ҩ

Ҫ

ҫ

Ҭ

ҭ

Ү

ү

04B0

Ұ

ұ

Ҳ

ҳ

Ҵ

ҵ

Ҷ

ҷ

Ҹ

ҹ

Һ

һ

Ҽ

ҽ

Ҿ

ҿ

04C0

Ӏ

Ӂ

ӂ

Ӄ

ӄ

Ӆ

ӆ

Ӈ

ӈ

Ӊ

ӊ

Ӌ

ӌ

Ӎ

ӎ

04D0

Ӑ

ӑ

Ӓ

ӓ

Ӕ

ӕ

Ӗ

ӗ

Ә

ә

Ӛ

ӛ

Ӝ

ӝ

Ӟ

ӟ

04E0

Ӡ

ӡ

Ӣ

ӣ

Ӥ

ӥ

Ӧ

ӧ

Ө

ө

Ӫ

ӫ

Ӭ

ӭ

Ӯ

ӯ

04F0

Ӱ

ӱ

Ӳ

ӳ

Ӵ

ӵ

Ӷ

ӷ

Ӹ

ӹ

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0500

Ԁ

ԁ

Ԃ

ԃ

Ԅ

ԅ

Ԇ

ԇ

Ԉ

ԉ

Ԋ

ԋ

Ԍ

ԍ

Ԏ

ԏ

0510

0520

0530

Ա

Բ

Գ

Դ

Ե

Զ

Է

Ը

Թ

Ժ

Ի

Լ

Խ

Ծ

Կ

0540

Հ

Ձ

Ղ

Ճ

Մ

Յ

Ն

Շ

Ո

Չ

Պ

Ջ

Ռ

Ս

Վ

Տ

0550

Ր

Ց

Ւ

Փ

Ք

Օ

Ֆ

ՙ

՚

՛

՜

՝

՞

՟

0560

ա

բ

գ

դ

ե

զ

է

ը

թ

ժ

ի

լ

խ

ծ

կ

0570

հ

ձ

ղ

ճ

մ

յ

ն

շ

ո

չ

պ

ջ

ռ

ս

վ

տ

0580

ր

ց

ւ

փ

ք

օ

ֆ

և

։

֊

0590

֑

֒

֓

֔

֕

֖

֗

֘

֙

֚

֛

֜

֝

֞

֟

05A0

֠

֡

֢

֣

֤

֥

֦

֧

֨

֩

֪

֫

֬

֭

֮

֯

05B0

ְ

ֱ

ֲ

ֳ

ִ

ֵ

ֶ

ַ

ָ

ֹ

ֻ

ּ

ֽ

־

ֿ

05C0

׀

ׁ

ׂ

׃

ׄ

ׅ

׆

ׇ

05D0

א

ב

ג

ד

ה

ו

ז

ח

ט

י

ך

כ

ל

ם

מ

ן

05E0

נ

ס

ע

ף

פ

ץ

צ

ק

ר

ש

ת

05F0

װ

ױ

ײ

׳

״

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0600

؋

،

؍

؎

؏

0610

ؐ

ؑ

ؒ

ؓ

ؔ

ؕ

؛

؞

؟

0620

ء

آ

أ

ؤ

إ

ئ

ا

ب

ة

ت

ث

ج

ح

خ

د

0630

ذ

ر

ز

س

ش

ص

ض

ط

ظ

ع

غ

0640

ـ

ف

ق

ك

ل

م

ن

ه

و

ى

ي

ً

ٌ

ٍ

َ

ُ

0650

ِ

ّ

ْ

ٓ

ٔ

ٕ

ٖ

ٗ

٘

ٙ

ٚ

ٛ

ٜ

ٝ

ٞ

0660

٠

١

٢

٣

٤

٥

٦

٧

٨

٩

٪

٫

٬

٭

ٮ

ٯ

0670

ٰ

ٱ

ٲ

ٳ

ٴ

ٵ

ٶ

ٷ

ٸ

ٹ

ٺ

ٻ

ټ

ٽ

پ

ٿ

0680

ڀ

ځ

ڂ

ڃ

ڄ

څ

چ

ڇ

ڈ

ډ

ڊ

ڋ

ڌ

ڍ

ڎ

ڏ

0690

ڐ

ڑ

ڒ

ړ

ڔ

ڕ

ږ

ڗ

ژ

ڙ

ښ

ڛ

ڜ

ڝ

ڞ

ڟ

06A0

ڠ

ڡ

ڢ

ڣ

ڤ

ڥ

ڦ

ڧ

ڨ

ک

ڪ

ګ

ڬ

ڭ

ڮ

گ

06B0

ڰ

ڱ

ڲ

ڳ

ڴ

ڵ

ڶ

ڷ

ڸ

ڹ

ں

ڻ

ڼ

ڽ

ھ

ڿ

06C0

ۀ

ہ

ۂ

ۃ

ۄ

ۅ

ۆ

ۇ

ۈ

ۉ

ۊ

ۋ

ی

ۍ

ێ

ۏ

06D0

ې

ۑ

ے

ۓ

۔

ە

ۖ

ۗ

ۘ

ۙ

ۚ

ۛ

ۜ

۝

۞

۟

06E0

۠

ۡ

ۢ

ۣ

ۤ

ۥ

ۦ

ۧ

ۨ

۩

۪

۫

۬

ۭ

ۮ

ۯ

06F0

۰

۱

۲

۳

۴

۵

۶

۷

۸

۹

ۺ

ۻ

ۼ

۽

۾

ۿ

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0700

܀

܁

܂

܃

܄

܅

܆

܇

܈

܉

܊

܋

܌

܍

0710

ܐ

ܑ

ܒ

ܓ

ܔ

ܕ

ܖ

ܗ

ܘ

ܙ

ܚ

ܛ

ܜ

ܝ

ܞ

ܟ

0720

ܠ

ܡ

ܢ

ܣ

ܤ

ܥ

ܦ

ܧ

ܨ

ܩ

ܪ

ܫ

ܬ

ܭ

ܮ

ܯ

0730

ܰ

ܱ

ܲ

ܳ

ܴ

ܵ

ܶ

ܷ

ܸ

ܹ

ܺ

ܻ

ܼ

ܽ

ܾ

ܿ

0740

݀

݁

݂

݃

݄

݅

݆

݇

݈

݉

݊

ݍ

ݎ

ݏ

0750

ݐ

ݑ

ݒ

ݓ

ݔ

ݕ

ݖ

ݗ

ݘ

ݙ

ݚ

ݛ

ݜ

ݝ

ݞ

ݟ

0760

ݠ

ݡ

ݢ

ݣ

ݤ

ݥ

ݦ

ݧ

ݨ

ݩ

ݪ

ݫ

ݬ

ݭ

0770

0780

ހ

ށ

ނ

ރ

ބ

ޅ

ކ

އ

ވ

މ

ފ

ދ

ތ

ލ

ގ

ޏ

0790

ސ

ޑ

ޒ

ޓ

ޔ

ޕ

ޖ

ޗ

ޘ

ޙ

ޚ

ޛ

ޜ

ޝ

ޞ

ޟ

07A0

ޠ

ޡ

ޢ

ޣ

ޤ

ޥ

ަ

ާ

ި

ީ

ު

ޫ

ެ

ޭ

ޮ

ޯ

07B0

ް

ޱ

07C0

07D0

07E0

07F0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0800

0810

0820

0830

0840

0850

0860

0870

0880

0890

08A0

08B0

08C0

08D0

08E0

08F0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0900

0910

0920

0930

ि

0940

0950

0960

0970

0980

0990

09A0

09B0

ি

09C0

09D0

09E0

09F0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0A00

0A10

0A20

0A30

ਿ

0A40

0A50

0A60

0A70

0A80

0A90

0AA0

0AB0

િ

0AC0

0AD0

0AE0

0AF0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0B00

0B10

0B20

0B30

ି

0B40

0B50

0B60

0B70

0B80

0B90

0BA0

0BB0

ி

0BC0

0BD0

0BE0

0BF0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0C00

0C10

0C20

0C30

ి

0C40

0C50

0C60

0C70

0C80

0C90

0CA0

0CB0

ಿ

0CC0

0CD0

0CE0

0CF0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0D00

0D10

0D20

0D30

ി

0D40

0D50

0D60

0D70

0D80

0D90

0DA0

0DB0

0DC0

0DD0

0DE0

0DF0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0E00

0E10

0E20

0E30

฿

0E40

0E50

0E60

0E70

0E80

0E90

0EA0

0EB0

0EC0

0ED0

0EE0

0EF0

U

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0F00

0F10

0F20

0F30

༿

0F40

0F50

0F60

0F70

ཿ

0F80

0F90

0FA0

0FB0

྿

0FC0

0FD0

0FE0

0FF0

代码1:

代码语言:javascript复制
public class TestVar07{
        public static void main(String[] args){
                //定义字符类型的变量:
                char ch1 = 'a';
                System.out.println(ch1);
                char ch2 = 'A';
                System.out.println(ch2);
                char ch3 = '4';
                System.out.println(ch3);
                char ch4 = '中';
                System.out.println(ch4);
                char ch5 = '?';
                System.out.println(ch5);
                //java中无论:字母,数字,符号,中文都是字符类型的常量,都占用2个字节。
                char ch6 = ' ';
                System.out.println(ch6);
                //字符类型:单引号引起来的单个字符
                System.out.println("--------------------------------");
                /*
                转义字符:
                将后面的普通字符转换为特殊含义
                */
                char ch7 = 'n';
                System.out.println("aaa" ch7 "bbb");
                
                System.out.println("aaanbbb");// n  换行
                
                System.out.println("aaaaaaatbbb");  //  t  制表符
                
                System.out.println("aaabbbb");//aabbb  b  向前退一格
                System.out.println("aaarbbb");//bbb   r 将光标到本行开头 :回车
                
                System.out.println(""java""); // " 将双引号原样输出  ' 将单引号原样输出 \ 将原样输出
        }
}

代码2:

代码语言:javascript复制
public class TestVar08{
        public static void main(String[] args){
                char ch1 = 'A';
               System.out.println(ch1);//A
                System.out.println(ch1 90);//155
                System.out.println(155-ch1);//90
                //char类型我们看到的样子就是它本身的字面常量,但是底层在进行计算的时候,实际上是按照一个码进行计算的。
                //这个码就是ASCII
                //之前说char类型是按照Unicode码表进行存储的 (Unicode兼容了ASCII码,Unicode的前128位置ASCII)
                
                char ch2 = '中';
                System.out.println(ch2);// 中
                System.out.println(ch2 90);// 20103
                System.out.println(20103-ch2);// 90
                
                //转换:
                int num1 = (int)ch2;
                System.out.println(num1);//20013
                
                char ch = (char)20013;
                System.out.println(ch);
                
                int num2 = '中';
                char ch5 = 20013;
                System.out.println(ch5);
                
                //面试题:
                char ch6 = '2' 2;
                System.out.println(ch6);//'4'--->4
        }
}

编码和字符集

【1】什么是编码?

【2】通过生活案例

【3】由权威机构形成的编码表才可以称之为:字符集

  • ASCII

英文字符集

用一个字节的7位表示

  • IOS8859-1

西欧字符集

用一个字节的8位表示

  • GB2312

简体中文字符集

最多使用两个字节编码

PS:中文:2个字节

GB2312兼容了ASCII中的字符:

  • GBK

GB2312的升级,加入了繁体字

最多使用两个字节编码

疑问:

首位如果是0:一个字节代码代表一个字符

首位如果是1:那么一个字节不够,要加上后面的字节才能完整的表示一个字符。

  • Unicode

国际通用字符集,融合了目前人类使用的所有字符。为每个字符分配唯一的字符码。

退出了UTF标准:

三种编码方案: UTF-8,UTF-16,UTF-32

以UTF-8为案例讲解:

中文: 珊 ---》Unicode : 29642

底层存储:

UTF-8标准最多可以用6个字节表示:

以后我们用的最多的就是UTF-8

解释乱码问题

用记事本选择编码方法的时候一般要选择为ANSI---》获取当前操作系统的编码格式:GBK

四、布尔类型

boolean类型有两个常量值,true和false,在内存中占一位(不是一个字节),不可以使用 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。 boolean 类型用来判断逻辑条件,一般用于程序流程控制 。

代码语言:javascript复制
public class TestVar09{
        public static void main(String[] args){
                //创建一个布尔类型的变量:
                boolean flag1 = true;
                System.out.println(flag1);
                boolean flag2 = false;
                System.out.println(flag2);
                boolean flag3 = 5==9;
                System.out.println(flag3);
                boolean flag4 = 5<9;
                System.out.println(flag4);
        }
}

0 人点赞