java
数据类型
byte 8
short 16
int 32
long 64
float 32
double 64
char 16
boolean 不算入
取值大小
byte < short < int < long < float < double (char,boolean不存在取值)
变量
什么是变量:
-
可以存储数据的量
-
这个量的值是可变的
语法: 数据类型 变量名称 = 值;
-
可以没有初始化
-
在运算的过程中必须有值
注意点:
float, double , long 必须在数值的后方加入一个标识
float : F
double : D
long : L
char 有且只能有一个字符, 并且要使用单引号引入
取值范围
byte类型的最大值:127 最小值:-128
short类型的最大值:32767 最小值:-32768
int类型的最大值:2147483647 最小值:-2147483648
long类型的最大值:9223372036854775807 最小值:-9223372036854775808
float类型的最大值:3.4028235E38 最小值:1.4E-45
double类型的最大值:1.7976931348623157E308 最小值:4.9E-324
char类型的最大值:忽略最大值 最小值:忽略最小值
boolean类型没有取值范围,它只有两个值
类型转换
自动类型转换:
小转大 左侧类型必须要大于右侧类型
short s = 100; int i = s;
强制类型转换:
大转小 左侧类型必须要与右侧类型保持一致才行
float f = 100F; int i = (int)f;
大小对比
byte < short < int < long < float < double (char,boolean不存在取值)
Scanner
固定写法: Scanner s = new Scanner(system.in);
Scanner s = new Scanner(system.in);
System.out.print("请输入一句话:");
String str = s.next();
System.out.println("您输入的结果是:"+str);
next(); 传入的是String类型,如果遇到空格,后面的数据将会消失
nextLine(); 可以输出带空格的字符串
nextInt(); 只能传入int类型不能传入字符串
nextBoolean(); 传入boolean类型
nextByte(); 传入byte类型
nextShort(); 传入short类型
nextFloat(); 传入float类型
nextDouble(); 传入double类型
nextLong(); 传入long类型
运算符
算术运算符
'+' 两数相加
'-' 两数相减
'*' 两数相乘
'/' 两数相除
'%' 两数相除(取余)
'++' (在原有数值的基础上+1)
'--' (在原有数值的基础上-1)
如果++运算符 在变量的前方 则先运算后运行
如果++运算符 在变量的后方 则先运行后运算
如果--运算符 在变量的前方 则先运算后运行
如果--运算符 在变量的后方 则先运行后运算
赋值运算符
'=' 赋值号 把右侧赋值给左边
'+=' 把右侧的值与左侧的值相加,相加的结果赋值给左侧 ' -=' 把右侧的值与左侧的值相减,相减的结果赋值给左侧 '*=' ' /=' '%='
关系运算符
'>' 大于
'<' 小于
'>=' 大于等于
'<=' 小于等于
'==' 等于
'!=' 不等于
(关系运算符中,所返回的数据是布尔类型)
逻辑运算符
&& 双与(与) 关系运算1 && 关系运算2
左右两侧必须同时是true时, 才会返回true, 如果关系运算1 为false, 则进行短路, 右侧不再执行 返回false
int a = 10;
int b = 20;
int c = 30;
// && false && false
boolean b1 = a > b && a > c ;
System.out.println(b1); //false
// true && false
boolean b2 = a < b && a > c ;
System.out.println(b2); //false
// true && true
boolean b3 = a < b && b < c ;
System.out.println(b3); //true
|| 双或(或) 关系运算1 || 关系运算2
左侧两侧任意一侧为true时 ,则 返回true, 如果两个关系运算都为false,则为false
// || false || true
boolean b4 = (a + b) > c || (a + c) > b;
System.out.println(b4); //true
// false || false
boolean b5 = (a + b) < c || (a + c) < b;
System.out.println(b5); //false
// true || true
boolean b6 = (a + b) == c || (a + c) > b;
System.out.println(b6); //true
! 取非(非) 取相反的结果
它的运算表达式必须是一个布尔类型
System.out.println(!true); //false
System.out.println(!false); //true
System.out.println(!(a + b == c)); //false
(逻辑运算符: 返回的值的类型也是布尔类型)
三元运算符
数据类型 变量名称 = 条件表达式 ? 值1 : 值2;
条件表达式 如果为true, 则会把值1赋值给变量 并且变量的数据类型由值1来决定
int a = 10;
int b = 20;
//a<b为true, 所以输出值1
String s = a < b ? "值1" : "值2";
System.out.println(s); //值1
条件表达式 如果为false, 则会把值2赋值给变量, 并且变量的数据类型由值2来决定
//a<b为false, 所以输出值12 String s1 = a > b ? "值1" : "值2"; System.out.println(s1); //值2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。