单行注释 将//放在被注释的一行代码前
多行注释 /*和*/分别作为开始和结束
文档注释 用于生成文档,用于说明JAVA类,成员变量等功能。
符号:;用于分隔语句 、 { }用于定义一个代码块 、 [ ] 用于访问数组;
java命名必须以字母、下划线_、$三个开头,后面接字母,数字,下划线和$;注意不能用关键字等,不可以包含空格和其他除了$之外的特殊字符
java的关键字(48) :abstract continue for new switch assert default if package synchronized boolean do private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile float native super while
java保留字: const goto
java的数据类型
java属于强类型语言(1)先定义后使用 (2)int值只能赋给int类型变量,不可以直接赋给double类型 type Name[ =初始值]; 例如 int a = 3;
二进制 以0b/0B开头 例如定义一个八位的二进制整数 0b11010011 、32位的int类型最高位为符号位,0为正,1为负。注意:计算机以补码的形式储存整数,负数的补码是反码加一,正数补码与原码相同
八进制 以0开头
十进制
十六进制 以0x/0X开头 10-15位为a-f
java的基本类型:byte 一个字节 在计算机占据8位 数为2的8次方
short 两个字节 在计算机占据16位 数为2的16次方
int 四个字节 在计算机占据32位 数为2的32次方
long 八个字节 在计算机占据64位 数为2的64次方
将一个在byte或short类型的数范围内赋给一个byte或short变量,系统会自动把这个整数值当成byte或者short类型来处理。 例如 byte b = 32;
如果把整数值当成long 类型来处理,应在这个整数值后加L
char 字符型值必须用' '、字符串则用" "、
\b退格符 \n换行符 \r回车符 \t制表符 \"双引号 \'单引号 \\反斜线
float 4个字节 在计算机占据32位 数为2的32次方 例如1.2f
double 精度比float更精确,例如以1.2,1.3e/E2表示
正无穷大 正浮点数除以0 正无穷大值都是相等的
负无穷大 负浮点数除以0 负无穷大值都是相等的
非数 NaN表示0.0除以0.0 NaN与NaN不相等
布尔类型
布尔类型只有true 或者 false 、其他基本数据类型不能转化为布尔值 、注意下面的代码
//使用boolean类型的值和字符串进行连接运算,boolean类型的值会转换成字符串
String str1 =false +" ";
//下面将输出结果
System.out.println (str1);
基本类型数据的类型转换
自动转换: 把数值范围小的值直接赋给数值范围大的值被称为自动转换,反之则被称为强制转换,这就像把小瓶的汽水倒入空大瓶的汽水不会溢出反之则会溢出。
byte short int long float double 左边可以向右边自动转换 char类型并列short,但不接受byte类型的自动转换
public class CCAD
public static void main (String[] args)
{
int a =2;
//int自动转换为float
float f = a ;
//输出2.0
system.out.println(f);
}
基本类型的值加上字符串后,也会变成字符串类型
//下面输出的值为字符串类型
String a = 1.2 + " ";
强制转换会导致数据精度丢失 、(目标类型)数值
public class Conversion
public static void main(string[]args)
{
int a =234;
//把一个int值转换为byte值
byte b =(byte)a;
//输出的结果不是234
System.out.println (bvalue);
}
当一个算数表达式中含有多种基本数据类型时,运算时数据类型会被提升到最高等级。
shrot a = 4;
//a已经是int类型,下面错误
short b = a-2+3;
运算符
算数运算符: +、 -、 *、 /、%、++、--、
复杂运算符需要借助Math,常见的有Math.pow()乘方,Math.sqrt()平方根,Math.random()随机数,Math.sin()正弦。
int a = 3;
//求a的2次方
int b = Math.pow(a,2);
赋值运算符: = 、 左边是变量 ,右边可以是表达式的值,也可以是变量,也可是数值。
位运算:&:按位与。|:按位或。~:按位非。^:按位异或。<<:左移运算符。>>:右移运算符。>>>:无符号右移运算符。
位运算直接操作底层二进制码。
比较运算符:>、<、>=、<=、==、!=
逻辑运算符:用于操作两个布尔型、&&与、||或、!=非、及短路
三木运算符:(expression) ? if-true-statement : if-false-statement;
先对expression求值,正确则返回ture。三目运算符多见嵌套,
String a = 2>1 ? "2大" : "2不大";
//嵌套的三目运算符
String b = 5>2 ? "5大2" : (5<2 ? "5小于2" : "5大于2");
算数运算符的优先级
水平有限,有错误在所难免