Scanner、数据类型、运算符
1.数据类型:
1.基本数据类型:
(1)数值型:
整数:byte short int long
浮点:float double
(2)字符型:
char
(3)布尔型:
boolean
2.引用数据类型:
(1)类:
class
(2)接口:
interface
(3)数组
整数:
byte: 一个字节 (-128到127)
short: 两个字节 (-32768~32767)
int: 四个字节 (-2147483648~2147483647)越21亿
long: 八个字节 (-2^63 ~ 2^63-1)
整数类型默认值是:int
要给long赋值一定要给数值末尾加L/l
如果byte和short超过容量会认为是int类型处理
使用整数类型可以表示其他进制数转换为十进制的展示
二进制使用 0b开头 如(0b11)就是3
八进制使用 0开头 如(010)就是8
十六进制使用 0x开头 如(0xE)就是14
浮点:
float: 四个字节
double: 八个字节
默认数值型是:double
float赋值一定要给数值末尾加F/f
char:字符 两个字节 0~65535 用单引号 如:‘你’
一次只能表示一个字符
java采用Unicode编码 可以将相对应的Unicode编码展示
布尔值:
boolean
true:正确 false:错误
2.字符串:String
可以放很多字符 用双引号表示
String 类名 = “内容”
只要有双引号就是字符串
3.Scanner:
用在键盘输入 没有char类型
(1)导包
需要使用别的包的资源 import java.util.Scanner
(2)创建对象
Scanner input = new Scanner (System.in);
(3)対像调用方法
input.nextInt();获取整数的值input.nextDouble();获取小数的值
4.算术运算符:
加 减 乘 除 % ++ –
当前面是字符串时 + 起到字符串连接作用
整数类型除法运算是不保留小数
“%”取余数
“++”:
a++:后加加 先运算,再加一
++a:前加加 先加一,再运算
“–”:
和++一样
当他们独立成行时没有区别
5.赋值运算符:
“=”,“+=”,“-=”,“/=”,“*=”
int a =10; 将10赋值给int类型的变量a
a+=b 他们相等 a=a+b
注意:单纯的使用赋值运算符不会有数据类型变化
整数类型一旦byte+byte,short+short和byte+short结果会变成int类型
6.关系(比较)运算符:
< > <= >= != ==
==:两个等号表示比较
=:一个等号表示赋值
char:储存的是编码值(数字),可以比较 如’A‘<‘a’ ‘a’<‘b’
运算结果都是布尔值
7.逻辑运算符:
&、&&、|、||、^、!
&(与):
当两边表达式都是true时,结果都是true
&&(短路与):
当前边表达式为false时,则不会计算后边的
|(或):
当表达式都是false时,结果都是false,有一个是true就是true
||(短路或):
当前边表达式为true时,则不会计算后边的
^(异或):
异性相吸,同性相斥
!(非):
取反的意思
运算结果都是布尔值
8.数据类型的转换:
byte<short<char<int<long<float<double
自动类型提升:
从小的数据类型到大的数据类型
char直接赋值给int可以拿到编码值,也可以用(int)加上赋值的名
当多个运算符运算,结果是最高的类型
强制类型转换:
公式:小的数据类型 标识符(就是名) = (小的数据类型 )大的数据类型的值
如:int a=10;
byte b = (byte)a
将浮点类型转换为整数不包含小数点后边的值
9.优先级:
建议用小括号来完成