Java基本语法(上)
内容大纲
关键字和保留字
标识符
Java命名规范
变量概念
变量分类
变量范围
基本数据类型转换
基本数据类型与String运算
变量部分练习
进制及其转换
原码、反码、补码
进制转换
进制转换练习
算术运算符
关键字与保留字
关键字定义:Java语言中定义的具有特殊意义、用途的单词
关键字特点:关键字所有字母小写
保留字定义:以后可能当作关键字,现在还未使用
标识符
可以自己取名的地方叫标识符
注意:
①26个字母大小写、0-9、$、_组成
②数字不可以作为开头
③不能是标识符、长度不限、不含空格
Java命名规范
包名:多单词组成都小写 william.com
类名、接口名:多单词首字母大写 class TestDemo
变量名、方法名:首字母小写,从第二个单词首字母大写 testDemoFunction
常量名:所有单词大写,多单词连接用下划线 TEST_NUM
变量
①放在内存中存储②有范围③程序存储单元,存放数据
变量声明格式:变量类型 变量名 = 变量值 int number = 0;
变量必须先声明再使用,且不能重复
变量的作用域:{}内声明赋值的变量只在该作用域发挥作用
变量分类
按数据类型分类
按声明位置分类
①类内,方法外声明:成员变量
②方法体内部:局部变量
变量范围
整数类型:byte(1字节=8bit) -128~127 | short(2字节)| int(4字节)| long(8字节)
①long num=123445678L; 后面加 “L”
②double num=0.11;
③float num=0.11F; 后面加 “F”
字符类型:char(2字节) 字符
①Java中采用 Unicode编码,可存储一个字母、汉字、其他语言一个字符
② char c1 = 'a'; char c2 = '中'; char c3 = '9';
③ 可存储转义字符,如 char c4='u000a'; (16进制)表示 n
基础数据类型转换
自动类型提升:
①byte,short,char->int->long->float->double(小容量自动转换换成大容量,容量为表数范围)
②多类型数据混合运算,将数据类型转换成最大的再进行运算
int a=10;
long b=1000L;
long c=a+b;
③byte,short,char运算时转换成int类型运算
强制类型转换:
①大容量放到小容量 ②使用强制转换符③boolean不能强制类型转换
④byte,short,char之间做运算会先将自身提升成int类型
int b=1;
int a=1;
byte c=(byte)b + (byte)a; //编译不通过,byte类型运算时会自动转为int类型
正确写法:byte c = byte(b+a);
基本数据类型与String类型运算
String s = "hello"; String s2 = new String("hello2");
String类型与其他类型相加都转为String类型
Java的整型常量默认为int类型,Java的浮点类型默认为double类型
变量部分练习
进制
二进制(binary):0,1 ,满2进1.以0b或0B开头。
十进制(decimal):0-9 ,满10进1。
八进制(octal):0-7 ,满8进1. 以数字0开头表示。
十六进制(hex):0-9及A-F,满16进1. 以0x或0X开头表示。
010 0b10 0x10 10
原码、反码、补码(二进制整数)
原码:直接将一个数值换成二进制数。最高位是符号位
负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。
负数的补码:其反码加1。
①计算机以二进制补码的形式保存所有的整数。
②正数的原码、反码、补码都相同
③负数的补码是其反码+1
进制转换
十进制->二进制: 除2取余的逆 如13转换:连除2余数分别为1、0、1、1;逆序为1101
二进制->十进制 乘以2的幂数
二进制 八进制互转
二进制 十六进制互转
十进制 八进制互转:先转成二进制
十进制 十六进制互转:先转成二进制
进制练习
算术运算符
① 取模结果的正负和被模数的正负有关
System.out.println( 4 % -3); // 1
System.out.println(-4 % 3); //-1
System.out.println(-4 % -3); //-1
② 整数之间做除法只保留整数部分
③ 计算机中运算顺序不同可能会导致不同结果
n2 = 10 / 4 * 4;//8.0
n2 = 10 * 4 / 4; //10.0
练习
随意给出一个整数,打印显示它的个位数,十位数,百位数的值。格式如下:
数字xxx的情况如下:
个位数:
十位数:
百位数: