标签:java
今天学完IT十八掌第二天java基础课程: 学习内容: 今天的主要内容是JAVA语法基础知识:主要讲了JAVA中的关键字(中英文相对应), 标识符,注释的相关知识 今天的重点是 “运算符” 的相关知识 以及 “程序的流程结构” 遇到的问题: 需要帮助的问题 知识点比较多,每一集都有很多的知识点,对于没有JAVA基础的初学者来说有很大的压力。 所以希望在布置完作业后,在给出的答案的代码中 能够 详细到每一个关键行都给出相应的注释。 今天主要讲了JAVA基础的语法基础: Java元的基础组成: 关键字--标识符--注释--常量和变量 运算符--语句--函数--数组 关键字 ----------- [定义数据类型的关键字] class//类 interface//接口 byte//字节bit:位 short//短整型 2 byte int //整型 4 bytes long//长整型 8 bytes float//浮点型(单精度) double//双精度浮点. char//字符 (/t /n也为char类型) boolean//布尔 false true void//空 [定义数据类型 值 的关键字] false // true // null//空,不存在 [用于定义流程控制的关键字] if//如果 esel//否则 switch//分支 case//情况 default//默认,(缺省) while//当.. 循环 do// for//for 循环 break//中断 continue//继续 return//返回 [访问权控制修饰符的关键字] private//私有的 proected//受保护的 public//公共的 [class function(函数) modifier(修饰符)] abstract//抽象 final//最终的 static//静态的 synchronized//同步 extends//扩展 implements//实现 new//新建 this//当前 super//超类,父类, instanceof//是否是xxx实例 try//尝试 catch //捕获 finally //最终 throw //抛出 throws //定义类声明时,抛出异常 package //包 import //导入 export native //本地的 transient//瞬时的,暂时的,临时的 persistent asset//断言 标识符 ---------------- 自定义的名称规则 英文大小写+数字+符号 “_ ”"$" 注意:1.数字不可以开头 2.不可以使用关键字 3.Java严格区分大小写 4.尽量有意义 Java 名称规范 包名:aaa.bbb.ccc.ddd,全都小写 类 :helloWorld --> HelloWorld,所有单词首字母大写 变量和函数: convertStringToInt --> convertString2Int convertStr2Int --> 除第一个单词外,其他单词首字母大写 常量名:final String BRAND ="benz" XXX_YYY_ZZZ ;所有单词大写,多单词用“_”链接 注释 ----------------- 1.单行注释 // 2.多行注释 /* */ 3.文档注释 /** * */ 常量和变量 ------------- 常量的分类: 1.正数常量 ,所有的整数 2.小数常量,所有的小数 3.布尔boolean常量 true 和false 4.字符常量 一个数字或者符号用‘’ 标识 5.字符串常量 一个或多个字符用“”标识 6.null常量 只有一个数值及时:null 正数主要的四种表现类型: 二进制 0.1 八进制 0-7 十进制 0-9 十六进制0-9 A-F 满16进1 已0x开头 主要涉及到进制的转换: * 负数的二进制表现形式 对应的正数的二进制取反+1 变量 变量是 内存中的一个存储区域 该区域有自己的名称(变量名)类型(数据类型) 该区域的数据可以在同一类型范围内不断变化 变量可以用来不断的存放同一类型的常量,并可以重复使用。 使用变量的注意事项; 变量的使用范围 {} 之间 要初始化变量 格式 : 数据类型 变量名 = 初始化值 如 int a =1; 数据类型 : 基本数据类型:primitive 数值型: 整数类型:byte short int long 浮点型:float double 字符型:char 布尔型:Boolean 引用数据类型: 类:class 接口:interface 数组:[ ] 整数的默认类型为 :int 小数的默认类型为 double 数据类型转换: 自动类型转换 byte short char-->int float-->double 强制类型转换 byte i=1; byte a =(byte) i +1; * 所有数据与String 型数据进行运算时会自动转换为String型 运算符 ---------------- 算数运算符 + (正号,加,字符串相加) - (负号,减) * / % 取模 12%5 为2 为int型取整 ++ (前加加 先自增一再运算 后加加 先运算再加一) -- 同上 赋值运算符 = ,+= , -=, *= , /=, %= int a =1; a=a+1 <---> a+=1 是相同的 short s=1; s=s+1; //这里会报编译错误 因为s+1 会自动转换为int 类型 无法赋值给short类型的s s+=1 //通过编译 因为+= 在给s赋值时会自动完成强转操作。 比较运算符: == 等于 != 不等于 < 小于 > 大于 <= 小于等于 >= 大于等于 instanceof 检查是否是类的对象 逻辑运算符: & 与 | 或 ^ 异或 true^false true ! 非 && 短路与 || 短路或 * 单& 左边无论真假 ,右边都进行运算 * 双&& 时 如果左边为真,由变参与运算,如果为假,右边不参与运算 "|" 和 "||" 和单"&""&&"类似 "^" 异或 和"|" 的区别是 左右都为true时 结果为 false 位运算符 << 左移 (相当于乘2的倍数) 1<<1 = 1*2^1 =2 >> 右移 同理 >>> 无符号右移 & 与运算 | 或运算 ^ 异或运算 ~ 反码 位运算是直接对二进制进行的运算 << 空位补0,被移除的高位丢弃,空缺位补0。 >> 被移位的二进制最高位是0,右移后,空缺位补0; 最高位是1,空缺位补1。 >>> 被移位二进制最高位无论是0或者是1,空缺位都用0补。 & 二进制位进行&运算,只有1&1时结果是1,否则是0; | 二进制位进行 | 运算,只有0 | 0时结果是0,否则是1; ^ 相同二进制位进行 ^ 运算,结果是0;1^1=0 , 0^0=0 不相同二进制位 ^ 运算结果是1。1^0=1 , 0^1=1 三元运算符 格式 (条件表达式) ? 表达式1: 条件表达式2; 如果条件为true 运算后的结果为表达式1; 如果条件为false 运算后的结果是表达式2 程序的流程控制 判断结构 ------------------ if语句 3.if (条件表达式){ 1. if(true){ 执行语句 ; 执行语句; }else if(条件表达式) { } 执行语句; }…… { 执行语句; 2.if (条件表达式){ }else{ 执行语句; }else{ 执行语句; 执行语句; } if 语句 条件表达式无论写成什么样子,只看最终的结构是否是true 或者false 选择结构 switch (表达式){ case 取值1: 执行语句; break;//视情况决定是否加break case 取值2; 执行语句; break …… default: 执行语句; break } 1.switch 语句选择的类型只有四种 byte short int char 2.case和default 之间没有顺序 。 先执行第一个case , 没有匹配的case执行default。 结束switch的两种情况 ① 遇到break , 执行到switch语句结束 ② 如果匹配的case或者default没有对应的break 那么程序会继续向下 执行,运行可执行的语句,知道遇到break 或者switch结尾结束。 循环结构
代表语句 while do while for
while 语句表达式 do while 语句格式
while(条件表达式) do {
{ 执行语句;
执行语句; }while(条件表达式); //至少执行一次
}
for (初始化表达式;循环条件表达式;循环后的操作表达式//迭代条件) { 执行语句;//循环体 }
/*
1.for 里面的两个表达式的运行顺序 ,初始化表达式只读一次,判断循环条件true-->循环体--> 循环后的操作表达式-->判断循环条件…… 知道不满足条件 2.for 中定义的变量在for循环结束后就被释放 //只能在for {}的范围内调用
while循环使用的变量结束后依然可以继续使用
3.while (true )和 for (;;)为最简单的无限循环 //无条件控制循环次数
其他流程控制的语句
break (跳出)
continue (继续) //应用于循环结构 ,continue 语句是结束本次循环继续下次循环
函数 function 定义
----------------------
add //+
subtract //-
multiple //*
divide // /
支持 float double long int //函数的重载
标签:java
原文地址:http://670597669.blog.51cto.com/10018785/1770860