您的位置:首页 > 编程语言 > Java开发

Java笔记1 Java编程基础<1>标示符、变量、个别运算符

2013-05-22 22:46 676 查看
------- android培训java培训、期待与您交流! ----------

基础
02-01 标示符
Tip:标示符
1.由26个大小写字母组成。数字:0~9,符号:_$组成。
2.定义合法标示符规则:
a. 数字不可以开头;
b. 不可以使用关键字
3.Java中严格区分大小写。
4.注意:起名字时,为了提高阅读性,要尽量有意义。

Tip:java名称标识的命名
1.包名:多单词组成时所有字母都小写。
例:xxxyyyzzz
2.类名接口名:多单词组成时,所有单词的首字母大写。
例:XxxYyyZzz
3.变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。
例:xxxYyyZzz
4.常量名:多有字母都大写。多单词时每个单词用下划线连接。
例:XXX_YYY_ZZZ

Tip:注释
1. 单行注释://注释内容
2. 多行注释:/*注释内容*/
3. 文档注释:
/**
*注释的内容
*/
4.习惯养成:先写注释再写代码。注释部分大多就是自己的思想,有了思路代码才能严谨地敲出来。

02-02 常量与变量
Tip:常量
八进制:0-7,满8进1,用0开头表示。
十六进制:0-9,A-F,满16进1,用0x开头表示。

02-06 进制转换(负数二进制)
负数的二进制表现形式:对应的正数二进制取反+1。
注意:计算机中的二进制数是以补码的形式存在的。正数的补码是其本身。负数的补码是整数部分取反+1。

02-07 变量
Tip:常量与变量
1.Java语言是一种强制类型语言,对于每一种数据类型定义了明确的具体数据类型,在内存中总分配了不同大小的内存空间。
2.Java就两种数据类型:基本数据类型和引用数据类型。
基本数据类型分为:数值型、字符型(char)、布尔型(boolean)。其中数值型又分为整数类型(byte、short、int、long)和浮点类型(float、double)。
引用数据类型分为:类(class)、接口(interface)、数组([])。
整数默认:int 小数默认:double.
3.补充:部分数据的表示。float:数值+F(或f);long:整数值+L(或l);double:数值+D(或d)。在给float或long变量赋值时,末尾不加标示符编译会报错。
常见示例预览:
byte b = 127;//编译通过
byte b1 = 128;//编译失败,原因:int->byte。
byte b1 =(byte)128;//正确,截取整数的低8位,结果为:-128(截取int类型低8位)
char c = 97;//结果:a。自动赋值运算,会做自动转换动作。97是编码表中字符对应的值, //这个值赋值给字符变量会自动转换为相应的字符。值得注意的是,97不是int类 //型数据,看下面代码:
int a = 97; charc = a;//编译时会报错,可能原因:char占16位,取值范围0~65535,数 //据无负数表现形式,int占32位,取值范围:-2147483648~2147483647。即使:
byte a = 97;char c = a;//编译也不能通过。更加说明其他基本数据类型变量不能给char //类型变量赋值。
char c1 = ‘a’;//结果:a
float f = 123;//编译通过,自动类型提升:int->float
float f1 =123.0;//编译失败,原因:double->float,不可能。
long l = 123L;//编译通过
long l1 = 123;//编译通过,自动类型提升:int->long
double d =123D;//编译通过

02-10
Tip:转义字符
补充:程序文件的路径中使用分隔符时,在windows系统中,分隔符字符串”\\”、”/”、File.separator,三个分隔符都能被识别(编程经验),File.separator分隔符是通用分隔符,可以在很多系统中通用。

02-11
Tip:赋值运算符
1.思考:
short s = 3;
s = s+2;
s += 2;
第二行和第三行有何区别?
s = s+2;//编译报错,可能损失精度。原因:属于二次运算,先加(int型)再赋值(short)。
s += 2;//编译通过,一次运算,自动赋值运算,会做自动转换动作。
2.“&”和”&&”的区别
单&时,左边无论真假,右边都进行运算;
双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。
异或(^)与或(^)的区别:当左右都为true时,结果为false。
3.位运算符
① 最有效率的凡是算出2乘以8等于几?//2<<3
② 对两个整数变量的值进行互换(不需要第三方变量)
n = n+m;//11 = 3+8
m = n-m;//3 = 11-8
n = n-m;//8 = 11-3
如果n和m的值非常大,容易超出int的范围时,可以这样处理:
n = n^m;
m =n^m;//(n^m)^m
n =n^m;//(n^m)^n
注意:一个数异或同一个数两次,结果还是原来的那个数。

02-13
Tip:无符号右移,有符号左移、右移
<<:其实就是乘以2的移动位数次幂。
>>:就是除以2的移动位数次幂。
>>:最高位补什么由原数据的最高位而定。
如果最高位为0,右移后,用0补空位。
如果最高位为1,右移后,用1补空位。
>>>:无论高位是什么,右移后,都用0补。

02-16
Tip:& 、>>
&除进行真假值判断,还可以用于数据运算,如:截取一个数的低4位,如下:
int num = 60;
int temp = num& 15;//结果:temp=12
int temp =60>>4;//舍掉低四位

Tip:三元运算符
1.格式:(条件表达式)?表示式1::表达式2
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果表达式是2。
2.三元运算符:
好处:可以简化if else代码。
弊端:因为是一个运算符,所运算必须要有一个结果。
示例:
int a = 9,b;
(a>1)?300:200;//会报错
b =(a>1)?300:200;//编译通过

02-17
Tip:判断结构
三种格式:
1. if(条件表达式){
执行语句;
}

2. if(条件表达式){
至执行语句;
}else{
执行语句;
}

3. if(条件表达式){
执行语句;
}else if(条件表达式){
执行语句;
}
...
else{
执行语句;
}

补充:在开发中还可以有这样一种格式,限定在已知条件下判断:
if(条件表达式){
执行语句;
}else if(条件表达式){
执行语句;
}
...
else if(条件表达式){
执行语句;
}

部分代码演示:
int n = 3;
if(n>1){
System.out.println("a");
}elseif(n>2){
System.out.println("b");
}elseif(n>3){
System.out.println("c");
}
打印结果:a
解析:if语句在进行顺序判断时,当一个条件为真时,执行该代码块中的语句,后面关联的if语句不再判断真假值。

02-19
1.switch语句
格式:
switch(表达式){
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
case 取值3:
执行语句;
break;
...
default:
执行语句;
break;//可以不写
}
2.switch语句的特点:
(1).switch语句表达式选择的类型只有四种:byte、short、int、char。JDK1.5以后,枚举类型也可以。当使用枚举时,case的取值只能是枚举中的对象,超出已知枚举类的对象范围时,Eclipse会自动提示取值不是一个枚举变量。示例:
public enuma Person{
A,B;
}
public class BaseTest{
public static void main(String[] args){
String s = “AA”;
Person p = Enuma.valueOf(s);
switch(p){
case AA://编译失败
...
break;
case A://编译通过
...
break;
case Person.B://编译失败
...
break;
default:
...
break;
}
}
}
(2)case之间与default之间没有顺序,先执行第一个case,没有匹配的case执行default。
(3)结束switch语句的两种情况:遇到break,执行到break;如果匹配的case或者default没有对应的break,那么程序会继续向下执行。运行可以执行的语句,直到遇到break或者switch结尾结束。
主函数内代码示例:
int a = 2;
switch(a){
case 1:
System.out.println("1");
case 2:
System.out.println("2");

//break;
case 3:
System.out.println("3");

//break;
case 4:
System.out.println("4");
default:
System.out.println("5");

//break;
case 5:
System.out.println("你好");
结果:
2
3
4
5
你好
------- android培训java培训、期待与您交流! ----------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: