数据类型和操作符
- public class Course {
- int field;
- static int staticField;
- public static void method (int param1, int param2) {
- int variable1;
- int variable2;
四种变量:
1.属性(filed)
实例变量(instance variable)
2.静态属性(static filed)
类变量 (class videntifer)
3.局部变量
4.参数
如何定义变量: 数据类型 变量名(identifier)
1.直接加分号 ; 定义了变量,没有初始化
2. =value ; 定义了变量,并且初始化
int a;
inr a=100;
命令变量名(包括类名、方法名)一些规则(不遵循规则编译会报错)
1.必须以 字母 或者 下划线 _ 美元符 数字
2.变量名长度可以无限
3.不能和java关键字重复
4.是大小写明显的
命名的规范:
1.数字开头、*开头的变量名编译不通过 &/汉字开头可以,但不建议用
2.永远使用有意义的名字作为变量名,包括缩写
3.不要使用中文以及拼音命名
4.类名称 单个单词的首字母都大写的形式 class HelloWorldApp
方法名称 单个单词,除第一个单词外,首字母都大写的形式 int helloWorldApp;
变量名称
常量 (不可以修改) 每个字母都大写,用下划线分割 final int COUNT_OF_COURSES =100;
5.类名称 和变量名称 名词
方法名称 动词
对象 :1.状态 (属性) 2.行为(方法)
数据类型(俩大类)
1.基本数据类型(primitive data type)
char 类型里保存的不是一个ASCLL码 而是Unicode 编码
ASCLL(7位表示) 和 Unicode(31位表示) 字符编码标准
重点:统一认准UTTF-8
2.引用数据类型
字面量 (Literal)
int a=10;
1.整形的字面量
100; (int)
100L 1001 (long)
进制
十进制 100 100L
十六进制 oxFF oxFFL
二进制 ob1010 ob1010L
100 (默认int型) byte a=100; (F) byte b-233;(T)
short /byte可存int 型 (-128 ——127)
100L (long型的字面量) int a=100L;(T)
浮点型的字面:
1.0 (double)
1.0F 1.0f (folat)
double a=1.0f(里式转换原则)
需要一个大范围的变量,放一个小范围的变量是自然而然的
强制类型转换:
type cast
long a=100L; int b=(int) a;
通常情况下,
小范围数据类型 a=大范围数; 不允许
大范围数据类型 b=小范围数; 允许
boolean 字面量 ture/false
char以及string 类型
字符 字符串
char c=‘中’;用单引号
string s=‘中国’用双引号
char 的转义字符
\n \f \b \\ \' \* …
string的加法运算 string a=‘我爱’string b=‘中国’a+b=‘我爱中国’
public static void learnStringAdd() {
int a=3;
int b=4;
System.out.println("结果是”+a+b);
System.out.println("结果是”+(a+b));
}
public static void main(string[] args) {
learnStringAdd();
}
运算符:
赋值运算符
初始化
修改值
final int a=100; a的值不能被修改
a=30; //编译出错
算数运算符 +- * / %
比较运算符 == != > >= < <=
条件运算符 && || ?:
条件运算符:
条件(只允许boolern类型)?结果一:结果二
凡是用到逻辑运算时,必须用布尔类型。逻辑取反只能用布尔类型
短路特性:
条件1&&条件2 如果条件1的结果为假(false)
条件1||条件2 如果条件1的结果为假(false)
位运算符(~ & | ^)
移位运算符(<< >> 带符号右移 >>>不带符号右移)
Instanceof 类型判断运算符
对象 instanceof 类型 (类) --ture |flase