1.标识符:需要自定义名称都叫标识符.eg:类名,变量名,方法名
1、标识符只能由字母,数字,下划线,美元符号组成.
2、标识符只能以字母,下划线,美元符号开头.
3、标识符可以包含数字,但是不能以数字开头.
4、标识符除了下划线,美元符号以外,不能包含其他任何特殊字符.
5、标识符不能用java中关键字.
6、帕斯卡命名法:标识符可以由一到多个单词组成,每个单词首字母大写,其它的类名采用帕斯卡命名法.
7、驼峰式命名法:标识符可以由一到多个单词组成,第一个单词首字母小写,其他单词首字母大写, 其他小写.一般情况下,变量名和方法名采用驼峰式命名法.
2.变量:在内存中开辟一块空间存值.
1、变量三要素:变量名(自定义),变量类型,变量值.
2、变量必须先声明赋值,才能使用.
3、=:赋值号,将等于号右边值赋给左边.
4、变量声明和赋值的语法:
⑴.先声明变量,再给变量赋值.
声明变量的语法: 数据类型 变量名;
给变量赋值的语法: 变量名=变量值;
//声明变量
String name;
//给变量赋值
name="姓名";
⑵.声明变量的同时赋值: 数据类型 变量名=变量值;
//声明变量的同时赋值
int age=18;
float height=1.88f;
double weight=100.5;
char sex='女';
boolean maritalStatu=true;
3、变量分类
1.按数据类型分:
基本数据类型的变量:只要变量的数据类型是byte,short,int,long,float,double,char,boolean.
引用数据类型的变量:变量的数据类型是数组,类,接口等
2.按声明位置分:
局部变量:在方法中声明的变量叫局部变量,局部变量在声明它的大括号中有用.
成员变量:在类中,方法外面声明的变量叫成员变量.
(注意:局部不赋值,没有值,就不可以直接用;成员变量不赋值,系统会给它分配默认值)
3.在同一个作用范围内不能声明相同的变量名.(在同一个大括号中不能声明相同变量名)
4、常量:在内存中开辟一块空间存固定值.常量一生中只能赋一次值.
常量声明语法:final 数据类型 常量名=值;(常量名全大写)
//声明常量的同时赋值
final double PI=3.14;
//先声明常量再给常量赋值
final double NUM;
NUM=3.15;
4.java中常用数据类型
1.基本数据类型
整数:byte,short,int(默认),long
小数:float,double(默认)
单个字符:char (char类型的值要加单引号)
存true/false:boolean
2.引用数据类型
存1个到多个字符:String 注意:字符串类型的值要加双引号.
public static void main(String[] args){
//声明变量
String name;
//给变量赋值
name="张三";
//声明变量的同时赋值
int age=30;
float height=1.88f;
double weight=120;
char sex='男';
boolean maritalStatu=true;
//输出变量
System.out.println(name);
System.out.println("年龄为:"+age);//+起连接作用
System.out.println("身高:"+height+",体重:"+weight+",性别:"+sex);
System.out.println("婚否:"+maritalStatu);
}
5.数据类型转换
1.自动类型转换:
语法: 大数据类型 变量名=小数据类型的变量;
兼容:类型要能相同或相近;
⑴.两种数据类型要兼容;
⑵.小类型转换为大类型;
//声明变量同时赋值
int num1=11;
//声明变量赋值,自动类型转换
double num2=num1;
//自动类型转换
float num3=num1;
float num4=22;
2.强制类型转换: 语法:小数据类型 变量名=(小数据类型)大数据类型的变量(强制类型转换有风险.)
⑴.两种数据类型要兼容.
⑵.大类型转换为小类型.
//声明变量同时赋值
double num5=3.14;
//强制类型转换
int num6=(int)num5;
3.char与int之间相互转换:因为ansi码表,char类型字符都有对应int数字
⑴.char转换为int,发生自动类型转换
//声明变量同时赋值
char c1='a';
//自动类型转换:小类型转换为大类型,两种类型有ansi码表对应
int num8=c1;//97
⑵.int转换为char,用强制类型转换
//声明变量同时赋值
int num9=100;
//强制类型转换:大类型转换为小类型,两种类型有ansi码表对应
char c2=(char)num9;
4.算术式子中有一个为大类型,整个式子结果提升为大类型.
5.如果强制转换的变量值超过目标类型取值范围,在取值范围内转圈圈
如果取值范围包含0:结果=值-max+min-1
如果取值范围不不包含0: 结果=值-max+min