目录
前言
努力没有停止
变好还在继续
提示:以下是本篇文章正文内容,下面案例可供参考
1.关键字和保留字
关键字(Keyword)的定义和特点
定义:被Java语言赋予了特殊含义,用作专门用途的字符串(单词)
特点:关键字中所有字母为小写
官方网址:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_kewwords.html
关键字:
(插图来自尚硅谷宋红康讲师)
Java保留字:现有Java版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留字 goto、const
2.标识符及命名规则
标识符:
Java对各种变量、方法和类等要素命名时使用的字符序列成为标识符
技巧:凡是自己可以起名字的地方都叫标识符(比如:类名、变量名、方法名、接口名、包名...)
定义合法标识符规则:
由26个英文字母大小写,0-9,——或$组成
数字不可以开头
不可以使用关键字和保留字,但能包含关键字和保留字
Java中严格区分大小写,长度无限制
标识符不能包含空格
public class IdentifierTest {
public static void main(String[] args){
}
}
class Hello_${
//可以
}
//class 1Hello{
//报错,不可以使用
class static1{
//可以
}
class Static{
//可以
}
Java中的名称命名规范:
包名:多单词组成所有字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
注意1:在起名字时,为了提高阅读性,要尽量有意义 “见名知意”
注意2:java采用哦个unicode字符集,印次标识符也可以使用汉字声明,但是不建议使用
3.变量的定义
变量的概念:内存中的一个存储区域
该区域的数据可以在同一类 范围内不断变化
变量时程序中最基本的存储单元。包含变量类型、变量名和存储的值
变量的作用:
用于在内存中保留数据
使用变量注意:
Java中每个变量必须先声明,后使用
使用变量名来访问这块区域的数据
变量的作用域:其定义所在的一对{}内
变量只有在其作用域内才有效
同一个作用域内,不能定义重名的变量
/*
变量的使用
1.java定义变量的格式:数据类型 变量名 =变量值;
2.说明:
变量必须先声明,后使用
变量都定义在其作用域内,在其作用域内,它是有效的换句话说,出了作用域就失效了
同一个作用域内,不可以声明两个同名的变量
*/
public class VariableTest {
public static void main(String[] args){
//变量的定义
int myAge = 12;
//变量的使用
System.out.println(myAge);
//变量的声明
int myNumber;
//变量的赋值
myNumber = 1001;
System.out.println(myNumber);
}
}
4.变量的分类(整形、浮点型、字符型、布尔型)
Java定义的数据类型
一、按数据类型来分
基本数据类型
数值型:整数类型(byte\short\int\long)
浮点类型(float\double)
字符型:char
布尔型:boolean(true\false)
引用数据类型
类:class
接口:interface
数组:[]
二、变量在类中声明的位置:
成员变量VS局部变量
/*
Java定义的数据类型
一、按数据类型来分
基本数据类型
数值型: 整数类型(byte\short\int\long)
浮点类型(float\double)
字符型:char
布尔型: boolean
引用数据类型
类: (class)
接口:(interface)
数组:(array)[]
二、变量在类中声明的位置:
成员变量VS局部变量
*/
public class VariableTest1 {
public static void main(String[] args){
System.out.println("HelloWorld!");
//1.整形:byte(1字节=8bit)\short(2字节)\int(4字节)\long(8字节)
//byte范围:-128~127
byte b1=12;
byte b2=-128;
System.out.println(b1);
System.out.println(b2);
//声明long型变量,必须以“1”或者“L”结尾
//通常,定义整形变量时,使用int型
short s1=128;
int i1=1234;
long l1=3414234324L;
System.out.println(l1);
//2.浮点型:float(4字节)\double(8字节)
//浮点型:表示带小数点的数值
//float表示数值的范围比long还大
double d1 =123.3;
System.out.println(d1 +1);
//定义float类型变量时,变量要以“f”或“F”结尾
float f1=12.3F;
System.out.println(f1);
//通常,定义浮点型变量时,使用double型。
//3.字符型:char(1字符=2字节)
//定义char型变量,通常使用一对''
char c1='a';
System.out.println(c1);
//表示方式:1.声明一个字符 2.转义字符
char c5 ='\n';//换行符
c5 ='\t';//制表符
System.out.println("hello" + c5);
System.out.println("world");
char c6='\u0043';//C
System.out.println(c6);
//4.布尔型:boolean
//只能取两个值之一:true、false
//常常在条件判断、循环结构中使用
boolean bb1=true;
System.out.println(bb1);
boolean isMarried=true;
if(isMarried){
System.out.println("*********");
}
else{
System.out.println("***********");
}
}
}
5.基本数据类型之间运算规则(自动类型转换、强制类型转换)
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
前提:这里讨论只是7种基本数据类型变量间的运算,不包含boolean类型的
自动类型转换(只涉及7种基本数据类型)
特别的:当byte、char\short三种类型的变量做运算时,结果为int型
说明:此时的容量大小指的是,表示数的范围的大和小,比如:float 容量要大于logo的容量
byte\char\short>>>>>int>>>>long>>>>float>>>>double
强制类型转换(只涉及7种基本数据类型):自动类型提升运算的逆运算。
1.需要使用强转符:()
2.注意点:强制类型转换,可能导致精度损失
/*
基本数据类型之间的运算规则:
前提:这里讨论只是7种基本数据类型变量间的运算,不包含boolean类型的
自动类型转换(只涉及7种基本数据类型)
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
byte\char\short>>>>>int>>>>long>>>>float>>>>double
特别的:当byte、char\short三种类型的变量做运算时,结果为int型
说明:此时的容量大小指的是,表示数的范围的大和小,比如:float 容量要大于logo的容量
强制类型转换(只涉及7种基本数据类型):自动类型提升运算的逆运算。
1.需要使用强转符:()
2.注意点:强制类型转换,可能导致精度损失
自动类型转换
*/
public class VariableTest2 {
public static void mian(String[] args){
byte b1 =2;
int i1=12;
int b2= b1+i1;
long l1=b1+i1;
System.out.println(b2);
System.out.println(l1);
强制类型转换
double d1=12.9;
//精度损失举例1
int i2=(int)d1;//截断操作
System.out.println(i2);
//没有精度损失
long l2=123;
short s2=(short)l2;
//精度损失举例2
int i3=128;
byte b =(byte)i3;
System.out.println(b);//-128
}
}
6.String类型的变量的使用
String与8种基本数据类型间的运算
1.String属于引用类型数据,翻译为:字符串
2.声明String类型变量时,使用一对""
3.String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+
4.运算的结果仍然是Strng类型
避免:
String s=123;//编译错误
String s1="123"
int i=(int)s1; //编译错误
public class StringTest {
public static void main(String[] args){
int number = 1001;
String numberStr="学号";
String info=numberStr + number;//+:连接运算
System.out.println(info);
boolean b3 = true;
String info1 = info +b3;
System.out.println(info1);
}
}
练习
char c='a';
int num = 10;
String str = "hello";
System.out.println(c + num +str);//输出107hello
System.out.println(c + str +num);//输出ahello10
System.out.println(c + (num +str));//输出a10hello
System.out.println((c + num) +str);//输出107hello
System.out.println(str + num +c);//输出hello10a
7.二进制与十进制
所有数字在计算机底层都以二进制形式存在
对于整数,有四种表示方式:
二进制(binary):0,1 满2进1 以0b或0B开头
八进制(octal):0-7,满8进1,以数字0开头表示
十进制(decimal):0-9,满10进1
十六进制(hex):0-9及A-F,满16进1,以0x或0X开头表示。此处的A-F不区分大小写。如:0x21AF+1=0X21BO
总结
好好学习,天天向上
努力没有停止,变好还在继续
感谢尚硅谷宋红康老师:尚硅谷官网(www.atguigu.com)