标识符(Identifier):
作用:常量 变量 办法 类和包等的名称
命名规定:
1、必须以字母,_下划线,美元符 ”$” 结尾
2、其余局部能够是字母、_下划线,美元符 ”$” 和数字的任意组合
3、大小写敏感,长度无限度
4、不能够是 Java 关键字
留神:
1、java 不采纳通常语言应用的 ASCII 字符集
2、java 采纳 Unicode 这样的规范的国内字符集,因而,这里的字母的含意:英文、汉字等等。(不倡议应用汉字来定义标识符)
正确的示范:name,Name,user_name,$name,_name,publicName
谬误的:9username,user name,public
字符集简介:
ASCII: 英文字符集 1 个字节
ISO8859-1:西欧字符集 1 个字节
BIG5:台湾的大五码,示意繁体字,2 个字节
GB2312: 大陆应用最早,最宽泛的简体中文字符集,2 个字节
GBK:GB2312 的扩大,能够示意繁体中文,2 个字节
GB18030:最新的 GBK 的扩大,能够示意汉字,维吾尔文,藏文等中华名族字符,2 个字节
unicode: 国内通用字符集 2 个字节
常量和变量:
常量:在程序运行过程中,值不会产生扭转的量叫常量
应用 final 关键字润饰的变量称之为常量或者叫最终常量,示意不可批改
变量:在程序运行过程中,值会产生扭转的量叫变量
在办法外申明的变量叫做成员变量,会有默认值,而在办法内申明的变量没有默认值,必须初始化
public class ConstantAndVar{
static int d;// 成员变量
public static void main(String[] args){
// 申明
int a;
// 赋值
a = 10;
// 申明加赋值
int b = 20;
int c;
System.out.println(d);
//System.out.println(c);// 存在谬误,变量 c 没有初始化
int x = 10, y = 10;
final int c = 20;
}
}
数据类型:
java 是一种强类型语言
强类型:变量在定义的时候必须显示的什么类型是什么
弱类型:变量会依据值本人去推断,不须要指定类型是什么
整型 浮点型 字符型 布尔型(4 类 8 种)
整型:
byte:1 个字节 -128->127
short:2 个字节 -32768->32767
int: 4 个字节 正负 21 亿
long:8 个字节 应用时加 L,如:long len = 311111111L;
浮点型:(默认都是 double 类型)
浮点类型不能示意准确的值,会有肯定的精度损失
float: 单精度 应用 float,须要加 f,否则还是 double 类型,如:float f1 = 2.1221f
double: 双精度
字符型:
char:
https://www.cnblogs.com/wuqinglong/p/10329368.html
https://blog.csdn.net/ocean20/article/details/6743385
布尔类型:
boolean:只有 true 和 false,存储占 1 位
运算符:
public class OperatorDemo{public static void main(String[] args){
int a = 1;
int b = 2;
// 算数运算符
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
// 取整除,或者取商
System.out.println(a/b);
// 取余数,或者取模
System.out.println(a%b);
// 单目运算符
//++(--),示意在变量原有的根底上 +1,谁在前,先运算谁
System.out.println(a++);
System.out.println(++a);
//?
System.out.println(++b+b++);
// 扩大赋值运算符 += -= *= /=
int c = 1;
c+=2;
// d 是 byte 类型,d+ 1 整体变成 int 类型,须要将 int 类型转换为 byte,会有精度损失
byte d = 10;
//d = d+1;// 所以此处会报错
d+=1;// 失常,因为它会主动转换,倡议应用
// 关系运算符:返回值是 boolean 类型 只有 true 和 false 两种状况
System.out.println(1>2);
System.out.println(1<2);
System.out.println(1>=2);
System.out.println(1<=2);
System.out.println(1!=2);
System.out.println(1==2);
// 逻辑运算符
//&&: 示意短路与,两边的表达式,只有有一个是 false,整体后果就是 false, 两边的表达式从左向右开始比照,如果右边的表达式是 false,左边的表达式不再执行
//||: 示意短路或,两边的表达式,只有有一个是 true,整体后果就是 true, 两边的表达式从左向右开始比照,如果右边的表达式是 true,左边的表达式不再执行
//!: 示意取反,判断表达式,而后取反,如果表达式后果为 true,取反是 false,如果是 false,取反就是 true
//&,|:与运算,或运算,两边的表达式都会参加运算
System.out.println(3>5 && 3<4);
System.out.println(3>5 || 3<4);
System.out.println(!(3<4));
System.out.println(3>5 & 3<4);
System.out.println(3>5 | 3<4);
System.out.println(!(3>4));
// 位运算符:只能操作数值,操作的时候会转成二进制进行运算
//&: 全为 1 则是 1,否则为 0 如:100&101=100
//|: 只有有 1 则为 1,否则为 0 如:100&101=101
//^: 不同为 1,雷同为 0 如:100&101=001
//~:System.out.println(4 & 5);
System.out.println(4 | 5);
System.out.println(4 ^ 5);
System.out.println(~4);// 后果为 -5,波及移码,补码,反码
// 左移示意乘以 2,右移示意除以 2
System.out.println(2<<3);
System.out.println(16>>2);
// 条件运算符 / 三目运算符
// 应用时须要跟一个表达式,如果表达式为 true,返回:前的后果,否则返回:前面的后果
System.out.println(3>2 ? 3 : 2);
System.out.println(true?false:true?false:true);
System.out.println(false?false:true?false:true);
}
}