Java小白学习笔记(一)
本人小白,只是想写写笔记,如果有什么错误,敬请指正。
一、java的特点
java语言最大的特点就是它的跨平台性。可以进行一次编译,到处执行。
主要是由java虚拟机将java源程序编译后的字节码翻译成本机执行指令。
二、变量和运算符
1.标识符
标识符就是在java中 类,方法,变量等等的名称。
必须以字母、下划线(_)、美元符号($)开头,而且必须由这三部分和数字组成,不能有空格,不能使用关键字或保留字
2.变量
其值可以变化的量
变量是内存中具有一定大小的存储空间
每个变量都有一个内存地址和变量名
例: int n = 10;n即为变量
3.数据类型
基本数据类型:8种,每种数据类型规定数据空间的大小及对这些数据的操作
- 整数
- a)byte:1个字节、8个二进制位(bit),1位是符号位(0正数、1负数)-128-127
- b)short :短整,2个字节、16个二进制位,数据范围:正负3万多
- c)int:整数,4个字节,32个二进制,数据范围:正负21亿多
- d)long:长整数,8个字节,64个二进制位。
- 小数
- a)float:单精度浮点数,4个字节,32位
- b)double:双精度浮点数,8个字节,64位(建议使用)
- 字符型
- char:16位无符号整数,一对单引号括起来的单个字符。
原理:使用字符的编码表,位每一个字符指定一个对应的整数,存储这个对应的整数即可
- 布尔类型:boolean,值:true,false。
引用类型:
类、接口、数组
4.常量
直接写到源程序中的量
用final修饰
例 :final int N = 100;//赋值后不能在改变
常量的命名:全部大写
5.进制
二进制、八进制、十进制、十六进制
1)二进制:0b或0B+二进制数
2)八进制: 0 +八进制数
3)十六进制: 0x+十六进制数(0-9、abcdef)
十进制数转为二进制数
除基取余法:整数部分采用"除2取余",直到商为零,而余数(由低到高)即为转换成的二进制数
6.数据类型转换
1)当不同数据类型的数据在一起进行运算的时候,先要把数据类型统一成一种数据类型,在进行运算。
2)自动类型转换:把取值范围小的转换为取值范围大的
强制类型转换:把取值范围大的数据赋值给取值范围小的变量,要进行强制类型转换
例如 double x = 3.1415;
int n = (int)x;
7.运算符
1)算数运算符:+ - * / % (取余) ++(自增) --(自减)
2)自增++、自减–:一元运算符
n++ ++n
n-- --n
共同点:该运算产生两个值,一个是n本身的值,另一个是表达式的值,表达式的值等于当前n的值
区别:前自增或自减,先加再用
后自增或自减,先用在加
结论:不论是那种情况,n的值总是加一或减一,表达式的值受到影响
8.赋值运算符
1)等于号(=):
把=右边的值,赋值给左边的变量或常量
2)复合赋值运算符:
+= ,-=,*=, /=, %=
9.比较运算符(关系运算符):用来对数值进行比较,表达式的结果为布尔类型
== :等于
!=:不等
instance:判断实例是否属于某种类型
10.位运算:
&:按位与,对应位都为1,则为1,否则为0
|:按位或,对应位有一个为1,则为1,否则为0
^:异或,对应位不同,则为1,同则为0
<<:左移,a<<b,将a的二进制数据左移b位,右边移空的部分补0
>>:右移,a>>b,将a的二进制数据右移b位,如果最高位为0 ,则左边移空的部分补0,如果最高位为1,则左边移空的部分补1
>>>:无符号右移,不管最高位是1或0,左边移空的部分补0
11、三元运算符
语法:表达式1?表达式2:表达式3
表达式1值为真,结果为表达式2,否则表达式3
12、运算符的优先级
1).按照操作数多少划分:
一元运算符>二元运算符>三元运算符
2).按运算的类型划分:
算数>关系>逻辑>赋值
3).括号优先级最高
13、Scanner
获取控制台的输入
例如
首先创建一个Scanner对象
定义一个读取的整数
打印整数+1;