变量
声明变量的本质就是在内存中申请一个存储单元。里面的数据可能会变化,所以叫变量。
不同的变量需要的存储单元数不同。
变量名是为了寻找这块单元用的。
在Java中声明和赋值是这样的
int x = 5; int y; int 你好 = 6;
基本数据类型
byte short int long float double boolean char
Java 输入
int age; String name; Scanner sc = new Scanner(System.in); name = sc.next(); age = sc.nextInt();
进制转换
正数十进制到二进制
可以一直除2取余
正数二进制转十进制
对应位置乘权相加
负数十进制转二进制
把绝对值转二进制,然后取反+1
负数二进制转十进制
-1 取反 然后按正数二进制转十进制处理
整数类型
大部分时间用int即可。
注意一个点,java默认的数字是int类型。
如下代码
int x = 123456789098765432123456789
虽然肯定会报错,因为int存不下这么大的数字。但是在赋值给x之前其实就出问题了。因为java的数字默认是int类型,所以这么大的数字表示不了。解决方法是在后面加L。
更大的数字需要java.math.BigInteger
浮点数
java默认是double,如果要float要加f,可以看看上面的整数。
浮点数不准确,涉及到钱要用BigDecimal。
字符类型
通常是两个字节,能表示0~65535
char ch = 'a'; System.out.println("ch is " + a + "and its ASCII is " + (int)ch);
类型转换
分为两种。自动类型转换(小类型转大类型),强制类型转换(大类型转小类型)。
强制类型转换可能引起损失,损失的方式是截断。