java数据类型
整数型:byte 字节型 8b -128-127
short 短整型 16b -32768-32767
int 整型 32b
long 长整型 64b
小数类型
float 单精度浮点型 32b
double 双精度浮点型 64b 默认小数类型
非数值类型
char 字符类型 a 中 , char c = ‘中’; c=‘国’;
boolean 布尔类型 true false boolean bool = true;
常量
final
final String name = “张三”;
name = “李四”;{报错原因:变量被final声明后不能改变其值}
类型转换
1.自动类型转换 低类型----》高类型
低级类型的数据可以直接存入高级类型中 long num= 18;
运算过程中包含高级类型 结果将自动升级为高级类型 double num = 18+5.5;
2.强制类型转换 高类型—》低类型(一般会丢失精度)
int num = (int)5.6; syso(num);—>5
char c = ‘a’; int num = (int)c; 可以查阅 ASCII表
long num = 235358976422L
double num = 18+5.5
float num1 =1.1F;(1.1默认duble型)
//2.导包
import java.util.Scanner;
public class Test4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//友好提示
System.out.println("请输入用户名");
//1.创建对象
Scanner input = new Scanner(System.in);
//3.调用接收方法 next() 接收字符串
String name = input.next();
//接收char类型 先接受String类型 将其中第一个字符取出来
char gender = input.next().charAt(0);
System.out.println(name);
}
}
##### 运算符
赋值运算符 = 右边赋给左边
算术运算符 + - * / %
求模运算 做除法 返回余数 5%2—》1 5/2----》2
int num = 5;
num = num+6; —> num+=6;
num = num +1; -----> num++; num+=1;
区分:num +1 num++
&& 第一个条件为假 后边的运算不进行
& 第一个为假,依然要去执行第二个条件
|| 第一个条件为真 后面运算不进行
| 即使第一个条件为真(整个结果为真) 依然会去执行第二个条件