一、关键字
1、定义
1)关键字是电脑语言里事先设定的,有特别意义的标识符,有时又叫做保留字,还有特别意义的变量。
- Java的关键字对Java的编辑器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。
2、Java关键字含义
1)Java的语言规定关键字不能作为标识符。目前共有50个Java关键字。其中“const”和“goto”这两个 关键字在Java语言中没有具体的含义。Java语言把它们列为关键字,知识因为“const”和“goto”是其 他某些计算机语言的关键字。
2)Java关键字的大致含义见下图
关键字 | 含义 |
---|---|
abstract | 表明类或者成员方法具有抽象属性 |
assert | 用来进行程序调试 |
boolean | 基本数据类型之一,布尔类型 |
break | 提前跳出一个块 |
byte | 基本数据类型之一,字节类型 |
case | 用在switch语句之中,表示其中的一个分支 |
catch | 用在异常处理中,用来捕捉异常 |
char | 基本数据类型之一,字符类型 |
class | 类 |
const | 保留关键字,没有具体含义 |
continue | 回到一个块的开始处 |
default | 默认,例如,用在switch语句中,表明一个默认的分支 |
do | 用在do-while循环结构中 |
double | 基本数据类型之一,双精度浮点数类型 |
else | 用在条件语句中,表明当条件不成立时的分支 |
enum | 枚举 |
extends | 表明一个类型是另一个类型的子类型,这里常见的类型有类和接口 |
final | 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变 |
finally | 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 |
float | 基本数据类型之一,单精度浮点数类型 |
for | 一种循环结构的引导词 |
goto | 保留关键字,没有具体含义 |
if | 条件语句的引导词 |
implements | 表明一个类实现了给定的接口 |
import | 表明要访问指定的类或包 |
instanceof | 用来测试一个对象是否是指定类型的实例对象 |
int | 基本数据类型之一,整数类型 |
interface | 接口 |
long | 基本数据类型之一,长整数类型 |
native | 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的 |
new | 用来创建新实例对象 |
package | 包 |
private | 一种访问控制方式:私用模式 |
protected | 一种访问控制方式:保护模式 |
public | 一种访问控制方式:共用模式 |
return | 从成员方法中返回数据 |
short | 基本数据类型之一,短整数类型 |
static | 表明具有静态属性 |
strictfp | 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 |
super | 表明当前对象的父类型的引用或者父类型的构造方法 |
switch | 分支语句结构的引导词 |
synchronized | 表明一段代码需要同步执行 |
this | 指向当前实例对象的引用 |
throw | 抛出一个异常 |
throws | 声明在当前定义的成员方法中所有需要抛出的异常 |
transient | 声明不用序列化的成员域 |
try | 尝试一个可能抛出异常的程序块 |
void | 声明当前成员方法没有返回值 |
volatile | 表明两个或者多个变量必须同步地发生变化 |
while | 用在循环结构中 |
3)Java关键字按照相关性大致可以分为
①与数据类型相关:
byte(8bit),boolean(8bit),short(16bit),char(16bit),int(32bit),long(64bit),float(32bit),double(64bit),class,interface,enum
②与流程控制相关的:
do,while,for,if,else,switch,case,break,continue,default,return,try,catch,finally
③修饰符:
public,default,protected,private,fianl,void,static,strictfp,abstract,volatile,native
④与动作相关的:
package,import,throw,thorws,extends,implements,this,super,instaceof,new,synchronized
⑤其他:
true,false,null,goto,const,transient
二、数据类型:
imageboolean:布尔型,8位,表示逻辑值,值的内容为true或者false。默认false。
整型Integer:
byte:字节型,8位,是最小的整数类型,范围是-128~+127。默认0。
short:短整型,16位,范围是-32768~+32767。默认0 。
int:整型,32位,范围是-2147483648~+2147483647。默认0 。
long:长整型,64位,范围极大常用于科学计算领域。长整型数字最后有字母l或L。默认0L 。
char:字符型,16位,范围为\u0000~\uFFFF 。默认\u0000 。
浮点型Floating-point:
float:单精度浮点型,32位,范围±3.40282347E+38~±1.40239846E-45。
可以精确到7位有效数字,第8位的数字是第9位四舍五入后得到的。默认0.0f 。
double:双精度浮点型,64位,可以精确到16位有效数字,
第17位数字是第18位四舍五入得到的。默认0.0d 。
Java程序中小数默认为double型,
float f = 0.1;是不对的,应该是 float f = 0.1f; 或 float f = 0.1F; ,
而double d = 0.1; 或 double d = 0.1d; 或 double d = 0.1D都对。
不同数据类型之间的隐式转换时的强弱关系由弱到强为:
byte < short = char < int < long < float < double
显示转换的方法为:
int a = 100; char c = (int) a;
简单的代码演示:
import java.util.Scanner;
public class Convert {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new
Scanner(System.in);
byte b = 65, b1 = 0;
short s = 66, s1 = 0;
int i = 67, i1 = 0;
long l = 68L, l1 = 0;
int j = sc.nextInt();
char[] c =new char[5];
sc.close();
c[0] = byteToChar(b);
c[1] = shortToChar(s);
c[2] = intToChar(i);
c[3] = longToChar(l);
c[4] = intToChar(j);
System.out.println("c[4]="+c[4]);
System.out.println("\nb="+b);
System.out.println("s="+s);
System.out.println("i="+i);
System.out.println("l="+l);
System.out.println("c[0]="+c[0]);
System.out.println("c[1]="+c[1]);
System.out.println("c[2]="+c[2]);
System.out.println("c[3]="+c[3]);
b1 = charToByte(++c[0]);
s1 = charToShort(++c[1]);
i1 = charToInt(++c[2]);
l1 = charToLong(++c[3]);
System.out.println("\nb1="+b1);
System.out.println("s1="+s1);
System.out.println("i1="+i1);
System.out.println("l1="+l1);
}
public static char shortToChar(short x){
return (char)x;
}
public static char intToChar(int x){
return (char)x;
}
public static char longToChar(long x){
return (char)x;
}
public static char byteToChar(byte x){
return (char)x;
}
public static short charToShort(char x){
return (short)x;
}
public static int charToInt(char x){
return (int)x;
}
public static long charToLong(char x){
return (long)x;
}
public static byte charToByte(char x){
return (byte)x;
}
}
三、运算符
image算数运算符####
单目运算符:
+(取正)、-(取负)、++、--
二目运算符:
+、-、*、/、%
三目运算符:
?:
表达式1 ? 表达式2 : 表达式3
//若表达式1的布尔值为true,则取表达式2的值,若为false则取表达式3的值
关系运算符
==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)
位运算符:
&:按位与、|:按位或、~:按位非、^:异或(相同为0,不同为1)
位运算的原理是把运算数转化为二进制数进行比较,如:
5 & 10 的结果为0
实际上是:
0101
& 1010
——————————
0000
逻辑运算符
&&:逻辑与、||逻辑或、!逻辑非
如:
true && false 结果为false
移位运算符
>>:右位移、<<:左位移
移位运算的本质其实是转化为二进制数后进行移位,所以:
8>>2即为1000右移2位,变为0010,即4
左移n位就是乘2n,右移n位就是除以2n。
赋值运算符
= += -= *= /= &= |= ~= >>= <<=
i+=1实际上就是i=i+1
网友评论