黑马程序员java学习第二天,java入门介绍

来源:互联网 发布:动漫图片制作软件 编辑:程序博客网 时间:2024/06/02 23:51

---------------------- android培训java培训、期待与您交流! ----------------------

2 Java语言基础组成
2.1 关键字 2.2 标示符 2.3 注释 2.4 常量和变量
2.5 运算符 2.6 语句 2.7 函数 2.8 数组

2.1 关键字
定义:被JAVA语言赋予了特殊含义的单词
特点:关键字中所有字母都为小写

用于定义数据类型的关键字
class interface byte short int
long float double char boolean void
用于定义数据类型的关键字
true false null
用于定义流程控制的关键字
if else switch case default
while do for break continue retum

用于定义访问权限修饰符的关键字
private protected public
用于定义类,函数,变量修饰符的关键字
abstract final static synchronized
用于定义类与类之间关系的关键字
extends implements
用于定义建立实例及引用实例,判断实例的关键字
new this super instanceof
用于异常处理的关键字
try catch finally throw throws
用于包得关键字
package import
其他修饰符关键字
native strictfp transient volatile assert

2.2 标示符
①在程序中自定义的一些名称。
②右26个英文字母大小写,数字:0-9 符合:_$组成
③定义合法标示符规则:
 1,数字不可以开头
 2,不可以使用关键字
④java中严格区分大小写。
⑤注意:在起名字时,为了提高阅读性,要尽量有意义。
java中得名词规范:
①包名:多单词组成时所有字母都小写。  xxxyyyzzz
②类名接口名:多单词组成时,所以单词的首字母大写。  XxxYyyZzz
③变量名和函数名:多单词组成是,第一个单词首字母小写,第二个
单词开始每个单词首字母大写。  xxxYyyZzz
④常量名:所有字母都大写。多单词时每个单词用下划线连接。  XXX_YYY_ZZZ

2.3 注释
①对于单行和多行注释,被注释的文字,不好被JVM(java虚拟机)解释执行。
②对于文档注释,是java特有的注释,其中注释内容可以被JDK提供的工具javadoc所解析,
生产一套以网页文件形式体现的该程序的说明文档。
③注释是一个程序员必须要具有的良好编程习惯。
④初学者编写程序可以养成习惯:先写注释再写代码。
⑤将自己的思想通过注释先整理出来,在用代码去体现。
⑥因为代码仅仅是思想的一种体现形式而已。

2.4 常量与变量
①常量表示不能改变的数值。
②java中常量的分类
 1,整数常量。所有整数
 2,小数常量。所有小数
 3,布尔型常量。较为特有,只有两个数值。true false。
 4,字符常量。 将一个数字字母或者符合用单引号('')表识。
 5,字符串常量。将一个或者多个字符用双引号表识。
 6,null常量。只有一个说只就是:null。
③对于整数:java有三种表现形式。
1,十进制:0-9,满10进1.
2,八进制: 0-7, 满8进1,用0开头表示。
3,十六进制:0-9,A-F,满16进1,用0x开头表示。

二进制和十进制之间的转换。
 十进制-->二进制。原理:对十进制数进行除2运算。
 例如:6的二进是110。

 二进制-->十进制。原理:二进制乘以2的过程。
例如: 1 1 0  
     计算方式如下 
     1 1 0
     0*2(0)+1*2(1)+1*2(2)
     0  +   2    +    4  =6
例: 1    0   1   1   0    1    0   1=53
    128   64  32  16  8    4    2   1
例:5+4=9  5的二进制是101,4的二进制是100。
    101
   +100
   ——
   1001    9的二进制是1001.

 其他进制转换。转成16进制。四个二进制就是一个十六进制位。

例如:90
     0101-1010
       5   A       90=0x5A

 转成8进制
 三个二进制位代表一位
例如:001 011 010
       1   3   2

负数的二进制表现形式。

 6=110
 -6:其实就是6的二进制取反+1。
 取反:将二进制的1变成0,0变1。
 0000-0000 0000-0000 0000-0000 0000-0110

 1111-1111 1111-1111 1111-1111 1111-1001
       +0000-0000 0000-0000 0000-0000 0000-0001
       -----------------------------------------
 1111-1111 1111-1111 1111-1111 1111-1010 =-6

 负数的最高位都是1。

 


变量的概念:
①内存中得一个存储空间域
②该区域有自己的名称(变量名)和类型(数据类型)
③该区域的数据可以放在同一类型范围内不断变化
为什么要定义变量:用来不断地存放同一类型的常量,并可以重复使用
使用变量主要:
①变量的作用范围(一对{}之间有效)
②初始化值
定义变量的格式:
①数据类型 变量名=初始化值
②注:格式是固定的,记住格式,以不变应万变。
理解:变量就如同数学中得未知数。


1、变量就是将不确定的数据进行存储。
   也就是需要在内存中开辟一个空间。
   如何开辟内存空间呢?

就是通过明确数据类型,变量名称数据来完成的。
class VarDemo
{
 public static void main(string[] args)
 {
  //定义变量的格式;
  //数据类型  变量名 = 初始化值;
  //定义一个int类型变量,取值为4;
  int x = 4;
  System.out.println(x);
  x = 10;
  System.out.println(x);

  //演示其他数据类型。

  byte b = 2;//-128~127;

  //byte b1 = 128;

  short s = 30000;

  long 1 = 41;

  float f 2.3f;

  double d = 34.56;

  char ch = "4";
  char ch1 ="a";
  char ch2 ="+";
  char ch3 =" ";
  boolean bo = true;
  boolean boe = false;


  /*
  什么时候定义变量?
  当数据部确定的时候,需要对数据进行存储时。
  就定义一个变量来完成存储动作。

  */
  

  //类型的转换。

  //byte b = 3;

  //b = b + 2;

  //System.out.println(b);
 
  //b = (byte)(b + 2)


 }
{

2.5 运算符
①算术运算符 ②赋值运算符 ③比较运算符 
④逻辑运算符 ⑤位运算符 ⑥三元运算符

黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客

 


  算术运算符
class OperateDemo
{
 public static void main(string[] args)
 {
  //int x =4270;

  //x = x /1000 * 1000;
  //System.out.println(-1&5);

  int a =3,b;

  b = a++;//-->a=a+1;

  b = ++a;
  
  System.out.println("a=+a");
  //字符串数据和任何数据使用+都是相连接,最终都会变成字符串。
  //System.out.println("5+5"+(5+5));//"5+5=55"
  System.out.println(a);

黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客
黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客
 
 
黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客
 
 

 黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客
  转义字符

 /*
 转义字符:通过\来转变后面字母或符合的含义。
 \n:换行。
 \b: 退格。相当于BACKSPACE.
 \r:按下回车键。WINDOX系统,回车符是由两个字符来表示\s\n。
 \t:制表符,想当于TAB键。
 */
 System.out.println("hello \t world");
 //system.out.println("hello java");

 System.out.println("\\hello\\");

 char ch = "\";

 char c = "你";

 


 }
}

  赋值运算符
class OperateDemol
{
 public static void main(string[] args)
 {
  int x = 3;

  //+=  -=  *=  /=  &=

  x+=4;//x=x+4;

  short s = 4;

  //s = s + 5;
  s+=5;

  System.out println("Hello Word");
 }
}
  

左移右移

左移两位
3<<2=12;
00|00-0000 0000-0000 0000-0000 0000-001100
3<<1=6;3<<3=24;
右移两位
6>>2=1  6/2(2)=1        
000000-0000 0000-0000 0000-0000 0000-01|10
6>>1=3;
6/2=3;

<<  : 其实就是乘以2的移动的位数次幂。
>>  : 就是除以2的移动的位数次幂。

 

 

 

>> :最高位补什么由原有数据的最高位值而定。
    如果最高为0,右移后,用0补空位。
    如果最高位1,右移后,用1补空位。
>>>:无论最高位是什么,右移后,都用0补。   

如图黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客

 

 

 
 
 
 
 
 

 


  与-或-异或
&:

6 & 3 =2;
 110
&011
-----
 010 =2;

|:
 6|5=7;
 110
       |101
       -----
 111=7;


^ :
6^5=3;
  110
 ^101
------
  011 =3;

7 ^ 4
 111
^100
----
 011
^100
----
 111 =7;  7^4^4=7;
一个数异或同一个数两次,如果还是那个数。如下图

黑马程序员 第二天JAVA学习笔记 - chuange163@126 - 李川的博客
练习
1.最有效率的方式算出2乘以8等于几?    答:   2<<3;
2.对两个整数变量的值进行互换(不需要第三方变量)
 int n =3,m = 8;
 
 //1,通过第三方变量。
 /*int temp;
 temp = n;
 n = m;
 m = temp;
 */

 //2,不用第三方变量。
 n = n + m;//如果n和m的值非常大,容易超出int范围。
 m = n - m;
 n = n - m;
 
 n = n ^ m;
 
 m = n ^ m;//(n^m)^m;

 n = n ^ m;//n ^ (n^m);


 System.out.println("n="+n+",m="+m);

2.5.6 三元运算符
①格式
1,(条件表达式)?表达式1;表达式2;
2,如果条件为true,运算后的结果表达式1;
3,如果条件为false,运算后的结果表达式2;
②实例:
获取两个数中大数。
int x=3,y=4,z;
z=(x>y)?x:y;//z变量存储的就是两个数的大数。


问号冒号 是三元运算符。

 

 

2.6 程序流程控制
1、判断结构
if语句三种格式体现
①if(条件表达式) 
 {
  执行语句;
 }

②if(条件表达式)
 {
  执行语句;
 }
 else
 {
  执行语句;
 }
③if(条件表达式)
 {
  执行语句;
 }
 else if(条件表达式)
 {
  执行语句;
 }
 ……
 else
 {
  执行语句;
 }