java学习之java笔记(二)

一、java基础语法

a、标识符(java语言中,对各种变量、方法和类等要素命名是使用的字符序列)

▶    命名规则:标识符由字母、下划线“_” 、美元符“$”或数字组成,数字不能作为开头

▶    Java标识符大小写敏感,长度无限制

▶     约定俗成:Java 标识符选取因注意“见名知意”且不能与 Java 语言的关键字重名

 

b、关键字(Java中一些赋以特定的含义,用做专门用途的字符串称为关键字

▶    所有Java关键字都是小写英文字符串

▶    gotoconst  虽然从未使用,但也作被为 Java 关键字保留

 

c、java基本数据类型

▶ java常量

Java 的常量值用字符串表示,区分不同的数据类型。 如整型常量 123
实型常量 3.14
字符常量 ‘ a’
逻辑常量 true false
字符串常量 “ helloworld
null

▶ java变量

Java 变量是程序中最基本的存储单元,其要素包括 变量名 变量类型 作用域
Java 程序中每一个变量都属于特定的数据类型,在使用前必须对其声明,声明格式为:
type varName [=value][{, varName [=value]}]
例如:
int i = 100;
float f =12.3f;
fouble d1,d2=0.123;
String a="hello";
从本质上讲,变量其实是内存中的一小块区域,使用变量名来访问这块区域,因此,每一个变量使用前必须要先申请(声明),然后必须进行赋值(填充内容),才能使用

▶ java变量的分类

局部变量 :方法或语句块内部定义的变量
 
成员变量 :方法外部、类的内部定义的变量
注意:类外面(与类对应的大括号外面)不能有变量的声明 按所属的数据类型划分:
 
基本数据类型 变量
引用数据类型 变量

▶ java数据类型划分

▶ java基本数据类型范围

▶ java基本数据类型默认值

▶ java基本数据类型转换

java 中可以从 任意基本类型 转型到另外的基本类型
例外 à boolean 类型不可以转换为其他的数据类型。
转换分为默认转换和强制转换
整形,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则:
容量小的类型默认转换为容量大的数据类型;数据类型按容量大小排序为:
byte,short,char -> int ->long->float->double
byte,short,char 之间不会互相转换,他们三者在计算时首先会转换为 int 类型
容量大的数据类型转换为容量小的数据类型时,要加上 强制 转换符,但可能造成精度降低或溢出( double 转换成 float 会溢出);使用时要格外注意。
有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算。

实数常量(如:1.2)默认为double。整数常量(如:123)默认为 int

▶ 多种数据类型的混合运算

有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后再进行计算

 

d、运算符

Java 语言支持如下运算符:
算术运算符:  + - ,*, /( 整除 ) % ++ --
关系运算符: > < >= <= = = !=, ===
逻辑运算符: ! & , | , && || (短路与 / 或)
位运算符: & | ^ (异或), ~( 取反 ) >> << >>>( 无符号右移,用 0 填充 )
赋值运算符: 
扩展赋值运算符: + = - = ,* = / =
字符串连接运算符: +

//注意负数是以补码的形式存储,并且最高位用置1表示为负

补码=源码+取反+加一

 

e、表达式和语句

表达式是符合一定语法规则的运算符和操作数的序列
   a
  5.0 + a
  (a-b)*c-4
   i <30 && i%10!=0
表达式的类型和值
对表达式中操作数进行运算得到的结果
称为表达式的值。
表达式值的数据类型即为表达式的类型
表达式的运算顺序
应按照运算符的优先级从高到低的顺序进行
优先级相同的运算符按照事先约定的结合方向进行
 
 
条件语句 - 根据不同条件,执行不同语句
if
if .. else
if .. else if
if .. else if .. else if .. else
switch
循环语句 重复执行某些动作
for (JDK1.5 语法 )
while
do .. while;

 

f、循环

▶  for循环

for 语句为如下形式:
for( 表达式1; 表达式2; 表达式3) { 语句 ;… ; }
执行过程
首先计算表达式
1 ,接着执行表达式 2 ,若表达式 2 的值 = ture ,则执行语句,接着计算表达式 3 ,再判断表达式 2 的值;依此重复下去,直到表达式 2 的值 =false
for
语句中三个表达式都可以省略
JDK1.5 新补充的 for 语法(后面课程中补充,数组)

例:计算result = 1!+2!+……10!

public class Test {
    public static void main(String[] args) {
        long result = 0;
        long f = 1;
        for (int i = 1; i <= 10; i++) {
            f = f * i;
            result += f;
        }
		
        System.out.println("result=" + result);
    }
}


▶▶▶while&do while语句

while 语句为如下形式:

                while(逻辑表达式){ 语句;… ; }

执行过程

                先判断逻辑表达式的值。若=true.则执行其后面的语句,然后再次判断条件并反复执行,直到条件不成立为止

do while 语句为如下形式:

           do { 语句; … ; } while(逻辑表达式)

执行过程

                先执行语句,再判断逻辑表达式的值,若为true,再执行语句,否则结束循环

▶switch语句

switch() {
 
case xx :
  ….
  case xx :

  ….
  default:
  ….

}
小心 case 穿透,推荐使用 break 语句
多个 case 可以合并到一起,例如:
default 可以省略,但不推荐省略

Switch “()”里的值必须是int类型 但是byte,short,char是可以的,因为它们会自动转换成int

g、方法

▶Java 的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,声明格式:

 [修饰符修饰符 …] 返回值类型 方法名(形式参数列表){

  Java语句;… … …

 

 

▶形式参数:  在方法被调用时用于接收外界输入的数据。
实参:调用方法时实际传给方法的数据。
返回值:方法在执行完毕后返还给调用它的环境的数据。
返回值类型:事先约定的返回值的数据类型,如无返回值,必须给出返回值类型 void
 
▶Java 语言中使用下述形式调用方法:对象名 . 方法名 ( 实参列表 )
       实参的数目、数据类型和次序必须和所调用方法声明的形参列表匹配,

       return  语句终止方法的运行并指定要返回的数据

▶Java中进行函数调用中传递参数时,遵循值传递的原则:
   
基本类型传递的是该数据值本身。引用类型传递的是对对象的引用,而不是对象本身

h、变量的作用域

} 内部

 

i、递归调用

递归调用指在方法执行过程中出现该方法本身的调用例如:
Fibonacci 数列: 1, 1, 2, 3, 5, 8, …第40个数的值。数列满足递推公式:

             F1 = 1, F2 = 1             Fn = Fn – 1  +  Fn – 2 ( n > 2 )

例:

public class Test {    public static void main(String arg[]) {      
  System.out.println(f(5));  
  }  
  public static int f(int n) {   
     if (n == 1 || n == 2) {         
       return 1;   
     } else {        	return f(n - 1) + f(n - 2);   
     }
   }
}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值