java 002
数据类型
四类八种
基本数据类型
//整型
byte 1个字节 -128--127//-128:00000000
short 2个字节 -2^15--2^15-1
int 4个字节 -2^31--2^31-1
//浮点型
float 4个字节 -2^31--2^31-1
double 8个字节
//字符型
char 2个字节
//布尔型
boolean 1个字节
根据实际情况,什么情况用什么数据类型
原码 反码 补码
整数 整型转二进制
System.out.println(b);
System.out.println(Integer.toBinaryString(b));
//Binary二进制 string字符串
浮点型
基本数据类型
float(单精度)
阶码 8位 11111111无穷大 00000000机器0 1-254
-126--127+127(移码)
尾数 1.101
double(双精度)
字符型
char 2个字节
GBK 中国编码格式
unicode 万国码
布尔型
boolean 1个字节
两种状态 true or false
boolean flag,flag2 = false;
flag =true;
//简单逻辑运算:与或非 & | !
System.err.println(flag | flag2);
System.err.println(flag & flag2);
System.err.println(!flag2);
//异或 相同为flase,不同为true
System.err.println(flag ^ flag2);
运算结果:
数字运算符
++ 写在前面 是先运算出结果赋值后执行 写在后面 就是先执行再赋值
取余特别重要!!!哈希算法
System.out.println("2+3="+(2 + 3));
System.out.println("余数结果:"+5 % 3);
int count = 0;
System.out.println(count);
System.out.println(count++);
System.out.println(count);
System.out.println(count--);
System.out.println(count);
count += 5;
System.out.println(count);
count -= 3;
System.out.println(count);
count *= 5;
System.out.println(count);
count /= 5;
运行结果:
逻辑运算符
& | ! ^ && || > < >= <= == !=
计算结果只有true或false
算数运算符的优先级大于逻辑运算符
&& ||短路运算符
boolean a,b=true;
a=false;
if(a && b)//短路运算符,如果a不符合运算条件就直接不继续执行下去。节约运算复杂度
a=false;
三目运算符
condition ? result1:result2
int res= 4 > 5 ? 6 : 9;
System.out.println(res);
位移运算符
/*位移运算符
* <<相当于num * 2^n 不要溢出前边的1
* >>相当于num / 2^n 不要溢出末尾的1
*节约时间,提高效率
* */
int m = 10 << 1;
System.out.println(m);
int n = 10>> 1;
System.out.println(n);
基本数据类型的转换
/*数据类型的转换
* 短的转长的不需要转换
* */
short num3 =6;
byte num4 = (byte)num3;
System.out.println(num4);
num4=6;
num3=num4;
System.out.println(num3);
String和scanner的使用
public class variable_demo02 {
/*引入我想要的东西
* 输入进电脑并打印
* */
public static void main(String[] args) {
//创建一个扫描器scanner,输入数据
//system.in是系统的标准输入
Scanner scanner = new Scanner(System.in);
//程序会等着程序员输入一个int类型的数据
int i = scanner.nextInt();
System.out.println(i);
//字符串 多个字符串用+来代替
String s = "abscd"+"adasda";
System.out.println(s);
}
}
流程控制语句——if
if(条件){
如果条件是true,执行
}else if(另一个条件){
如果条件是true,执行}
else{
条件是false,执行}
package statement;
//流程控制语句——if
import java.util.Scanner;
//注意格式
public class statement_demo01 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int i = scanner.nextInt();
if (i > 4) {
System.out.println("您输入的数字大于4");
} else if (i == 4) {
System.out.println("您输入的数字等于4");
} else {
System.out.println("您输入的数字小于4");
}
}
}
流程控制语句——switch
switch (i) {
case 1:
System.out.println("查询话费");
break;//打断,不能继续执行
case 2:
System.out.println("查询流量");
break;
default:
System.out.println("error");
break;
}
循环结构while,do-while
package statement;
//循环结构while和do-while
public class statement_demo02 {
public static void main(String[] args) {
/****************************
* while语句格式
while (满足条件) {
执行语句
}//直到不满足条件,退出循环
*/
int s = 0,i = 7;
while(i > 0) {
s += i;
i--;
}
System.out.println(s);
}
}
/*******************************
do-while:
先执行,然后判断条件。
*/
int sum = 0,i = 7;
do {
sum += i;
i--;
} while (i > 0);
System.out.println(sum);