目录
运算符
运算符和表达式
运算符:对表达式或者变量进行操作的符号。
表达式:用运算符把字面量或者变量连接起来,符合Java语法的式子就可以称为表达式。
不同运算符连接的表达式体现的是不同类型的表达式。
int a = 10;
int b = 20;
int c = a + b;
//+ :是运算符,并且是算术运算符
//a + b:是表达式,由于+是算术运算符,所以这个表达式叫算数表达式
算术运算符
符号 | 作用 |
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模、取余 |
提示:在代码中,如果在计算的时候有小数参与,结果有可能是不精确的。
package Test;
public class Test16 {
public static void main(String[] args) {
//取模、取余、实际上也是做除法运算,只不过得到的是余数而已
System.out.println(10 % 2);//0
System.out.println(10 % 3);//1
}
}
注意:
/和%的区别:两个数据做除法,/去结果的商,%取结果的余数。
整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。
数字相加
数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算。
类型转换分类
隐式转换(自动类型提升)系统自动提升
取值范围小的数值-->取值范围大的数值
byte short char 三种类型的数据在运算时候,都会直接先提升为int,然后在进行运算
强制转换
如果把一个取值范围大的数值,赋值给取值范围小的变量。是不允许直接赋值的。如果一定要这么做就需要加入强制转换
强制转换(数据较大超出目标数据类型范围)容易发生错误
格式:目标数据类型 变量名=(目标数据类型)被强转的数据;
取值范围大的数值-->取值范围小的数值
取值范围从小到大
byte<short<int<long<float<double
double取值范围最大
字符串相加
【字符串只有相加操作】
当“+”操作中出现字符串时,这个“+”是字符连接符,而不是算数运算符了。
会将前后的数据进行拼接,产生一个新的字符串。
"12" + 21 //1221
连续进行“+”操作时,从左到右逐个执行。
1+99+"123"//100123
获取一个数个位、十位、百位...数
公式:
个位:数字%10
十位:数字%10%10
百位:数字%100%10
...
例子
package Test;
import java.util.Scanner;
public class Test16 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个三位数");
int i = sc.nextInt();
int ge = i%10;
int shi = i/10%10;
int bai = i/100%10;
System.out.println("个位是"+ge);
System.out.println("十位是"+shi);
System.out.println("百位是"+bai);
}
}
字符相加
字符的“+”操作
当字符+字符(字符+数字)时,会把字符通过ASCll码表查询到对应的数字在进行计算。
例子
package Test;
public class Test16 {
public static void main(String[] args) {
char c = 'a';
int result = c + 0;
System.out.println(result);//97
}
}
不劳烦各位了ASCll码表奉上
ASCll码表
ASCII 控制字符 (字符编码: 0-31)
在ASCII码表中,前32个字符是不能用于打印控制的编码,而是用于控制像打印机一样的外围设备。
十进制 | 八进制 | 十六进制 | 二进制 | 代码 | ||
---|---|---|---|---|---|---|
0 | 000 | 00 | 00000000 | NUL | ||
1 | 001 | 01 | 00000001 | SOH | ||
2 | 002 | 02 | 00000010 | STX | ||
3 | 003 | 03 | 00000011 | ETX | ||
4 | 004 | 04 | 00000100 | EOT | ||
5 | 005 | 05 | 00000101 | ENQ | ||
6 | 006 | 06 | 00000110 | ACK | ||
7 | 007 | 07 | 00000111 | BEL | ||
8 | 010 | 08 | 00001000 | BS | ||
9 | 011 | 09 | 00001001 | HT | ||
10 | 012 | 0A | 00001010 | LF | ||
11 | 013 | 0B | 00001011 | VT | ||
12 | 014 | 0C | 00001100 | FF | ||
13 | 015 | 0D | 00001101 | CR | ||
14 | 016 | 0E | 00001110 | SO | ||
15 | 017 | 0F | 00001111 | SI | ||
16 | 020 | 10 | 00010000 | DLE | ||
17 | 021 | 11 | 00010001 | DC1 | ||
18 | 022 | 12 | 00010010 | DC2 | ||
19 | 023 | 13 | 00010011 | DC3 | ||
20 | 024 | 14 | 00010100 | DC4 | ||
21 | 025 | 15 | 00010101 | NAK | ||
22 | 026 | 16 | 00010110 | SYN | ||
23 | 027 | 17 | 00010111 | ETB | ||
24 | 030 | 18 | 00011000 | CAN | ||
25 | 031 | 19 | 00011001 | EM | ||
26 | 032 | 1A | 00011010 | SUB | ||
27 | 033 | 1B | 00011011 | ESC | ||
28 | 034 | 1C | 00011100 | FS | ||
29 | 035 | 1D | 00011101 | GS | ||
30 | 036 | 1E | 00011110 | RS | ||
31 | 037 | 1F | 00011111 | US |
ASCII 打印字符 (字符编码: 32-127)
32~126(共95个)是字符:32是空格,其中48~57为0到9十个阿拉伯数字,65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。第127个字符表示的是键盘上的删除命令。
十进制 DEC | 八进制 OCT | 十六进制 HEX | 二进制 BIN | 符号 Symbol | ||
---|---|---|---|---|---|---|
32 | 040 | 20 | 00100000 | (空格) | ||
33 | 041 | 21 | 00100001 | ! | ||
34 | 042 | 22 | 00100010 | " | ||
35 | 043 | 23 | 00100011 | # | ||
36 | 044 | 24 | 00100100 | $ | ||
37 | 045 | 25 | 00100101 | % | ||
38 | 046 | 26 | 00100110 | & | ||
39 | 047 | 27 | 00100111 | ' | ||
40 | 050 | 28 | 00101000 | ( | ||
41 | 051 | 29 | 00101001 | ) | ||
42 | 052 | 2A | 00101010 | * | ||
43 | 053 | 2B | 00101011 | + | ||
44 | 054 | 2C | 00101100 | , | ||
45 | 055 | 2D | 00101101 | - | ||
46 | 056 | 2E | 00101110 | . | ||
47 | 057 | 2F | 00101111 | / | ||
48 | 060 | 30 | 00110000 | 0 | ||
49 | 061 | 31 | 00110001 | 1 | ||
50 | 062 | 32 | 00110010 | 2 | ||
51 | 063 | 33 | 00110011 | 3 | ||
52 | 064 | 34 | 00110100 | 4 | ||
53 | 065 | 35 | 00110101 | 5 | ||
54 | 066 | 36 | 00110110 | 6 | ||
55 | 067 | 37 | 00110111 | 7 | ||
56 | 070 | 38 | 00111000 | 8 | ||
57 | 071 | 39 | 00111001 | 9 | ||
58 | 072 | 3A | 00111010 | : | ||
59 | 073 | 3B | 00111011 | ; | ||
60 | 074 | 3C | 00111100 | < | ||
61 | 075 | 3D | 00111101 | = | ||
62 | 076 | 3E | 00111110 | > | ||
63 | 077 | 3F | 00111111 | ? | ||
64 | 100 | 40 | 01000000 | @ | ||
65 | 101 | 41 | 01000001 | A | ||
66 | 102 | 42 | 01000010 | B | ||
67 | 103 | 43 | 01000011 | C | ||
68 | 104 | 44 | 01000100 | D | ||
69 | 105 | 45 | 01000101 | E | ||
70 | 106 | 46 | 01000110 | F | ||
71 | 107 | 47 | 01000111 | G | ||
72 | 110 | 48 | 01001000 | H | ||
73 | 111 | 49 | 01001001 | I | ||
74 | 112 | 4A | 01001010 | J | ||
75 | 113 | 4B | 01001011 | K | ||
76 | 114 | 4C | 01001100 | L | ||
77 | 115 | 4D | 01001101 | M | ||
78 | 116 | 4E | 01001110 | N | ||
79 | 117 | 4F | 01001111 | O | ||
80 | 120 | 50 | 01010000 | P | ||
81 | 121 | 51 | 01010001 | Q | ||
82 | 122 | 52 | 01010010 | R | ||
83 | 123 | 53 | 01010011 | S | ||
84 | 124 | 54 | 01010100 | T | ||
85 | 125 | 55 | 01010101 | U | ||
86 | 126 | 56 | 01010110 | V | ||
87 | 127 | 57 | 01010111 | W | ||
88 | 130 | 58 | 01011000 | X | ||
89 | 131 | 59 | 01011001 | Y | ||
90 | 132 | 5A | 01011010 | Z | ||
91 | 133 | 5B | 01011011 | [ | ||
92 | 134 | 5C | 01011100 | \ | ||
93 | 135 | 5D | 01011101 | ] | ||
94 | 136 | 5E | 01011110 | ^ | ||
95 | 137 | 5F | 01011111 | _ | ||
96 | 140 | 60 | 01100000 | ` | ||
97 | 141 | 61 | 01100001 | a | ||
98 | 142 | 62 | 01100010 | b | ||
99 | 143 | 63 | 01100011 | c | ||
100 | 144 | 64 | 01100100 | d | ||
101 | 145 | 65 | 01100101 | e | ||
102 | 146 | 66 | 01100110 | f | ||
103 | 147 | 67 | 01100111 | g | ||
104 | 150 | 68 | 01101000 | h | ||
105 | 151 | 69 | 01101001 | i | ||
106 | 152 | 6A | 01101010 | j | ||
107 | 153 | 6B | 01101011 | k | ||
108 | 154 | 6C | 01101100 | l | ||
109 | 155 | 6D | 01101101 | m | ||
110 | 156 | 6E | 01101110 | n | ||
111 | 157 | 6F | 01101111 | o | ||
112 | 160 | 70 | 01110000 | p | ||
113 | 161 | 71 | 01110001 | q | ||
114 | 162 | 72 | 01110010 | r | ||
115 | 163 | 73 | 01110011 | s | ||
116 | 164 | 74 | 01110100 | t | ||
117 | 165 | 75 | 01110101 | u | ||
118 | 166 | 76 | 01110110 | v | ||
119 | 167 | 77 | 01110111 | w | ||
120 | 170 | 78 | 01111000 | x | ||
121 | 171 | 79 | 01111001 | y | ||
122 | 172 | 7A | 01111010 | z | ||
123 | 173 | 7B | 01111011 | { | ||
124 | 174 | 7C | 01111100 | | | ||
125 | 175 | 7D | 01111101 | } | ||
126 | 176 | 7E | 01111110 | ~ | ||
127 | 177 | 7F | 01111111 | (删除) |