2019-02-26

####复习

一、关键字,保留字,标识符

//   1.只能用下划线英文字母$开头

//   2.不能有空格

//   3.其他字符可以是英文,数字,_和$

//   4.不能用关键字和保留字

// 二、变量

//     数据类型:基本数据类型(整数,浮点型,字符型,布尔型)引用数据类型;

####

进制及转义符

//1.进制(二进制,八进制,十进制,十六进制);

//  二进制十进制转化

//2  65  1

//2  32    0

//2  16      0

//2  8        0

//2  4        0 

//2  2          0

//  1   

//  十六进制(0x开头):  0-F

//          (0~9,A~F)

//  0x121F        1*16^3+2*16^2+1*16+15=4639

//  2.字符另一种表示方式 unicode

//   3.转义符

//   4.运算符


####运算符(赋值运算符、算术运算符、比较运算符)

public class Demo3 {

public static void main(String []args) {

//运算符:赋值运算符:=、+=、﹣=、*=、/=、%=

// int num = 9;

// System.out.println(num);

// num = 100;

// System.out.println(num);

// num+=10;// num=num+10

// System.out.println(num);

// num-=10;//num=num-10

// System.out.println(num);

// num*=5;//num=num*5

// System.out.println(num);

//

//算术运算符: +、﹣、*、/、%、++、 --

// +:俩测是数字表达式的话为运算,加号有一侧有字符串,则作用为连接符

// System.out.println(5+6+7);//18

// System.out.println(5+"6"+7);//567

// System.out.println(5+6+"7");//117

// System.out.println(5+6+'7');

//  

// int num1= 99;

// int num2 =2;

// System.out.println(num1+"+"+num2+ "=" + (num1+num2));

//  除法:整型除整型=整型(int/int=int  不四舍五入);


//  %:取余(模运算)

int nu= 10%2;

System.out.println(nu);

System.out.println(-5%2);//结果只与被除数有关

System.out.println(-5%-2);

//比较运算符:>、<、>=、 <=、= =、!=、"instanceof(--)"

//逻辑运算符:!、&&、||

//位运算符: &、|、^ 、 ~、>>、<<、>>>  (---)

//条件运算符: ?:

//条件运算符很独特,因为它是用三个操作数组成的三元运算符。

      }

}

//同以块内,不能有同名的变量

//变量的作用于,:变量的有效范围,从声明位置开始,到他所在块得到结束



####自增、自减

public class Demo4 {

public static void main(String[] args) {

// TODO Auto-generated method stub

// ++自增 --自减

int i = 1;

// i++;//i=i+1;

// System.out.println(i);

// int j=0;

// j=i++;//先运算再自增;

// System.out.println(j);

// j=++i;//先自增在运算

// System.out.println(j);

int j =10;

j= i++;

System.out.println(i);//2

System.out.println(j);//1

}

}



###临时操作栈

public class Demo7 {

public static void main(String []args) {

int i= 3;


  i= i++;//临时操作栈


  System.out.println(i);

}

}

##### 位运算符

public class Demo10 {

public static void main(String []args) {

// 位运算符,&、|、~、^、>>、<<、>>>

// 按位& 与 或|和  逻辑 与  或都可以进行逻辑运算

//           按位与、或 运算参加位运算(二进制整数运算)

// 按位与& 只有参加运算的两位都为1,&运算的结果才为1,否则为0

// 101  5

// 110  6

// 100  4

System.out.println(5&6);

// 按位或|只有参加运算的两位都为0,|运算的结果才为0,否则为1

// 101 5

// 110 6

// 111 7

System.out.println(5|6);

// ^亦或只有参加运算的两位不同,^运算的结果才为1,否则为0

// 101 5

// 110 6

// 011 3

System.out.println(5^6);

// << 左移 a<

System.out.println(5<<2);  //a*2^b=5*2^2

//  >>右移  a>>b,将a的二进制数据右移b位,如果最高位是0,则左边移空的部分补0,如果最高位是1,则左边移空的部分补1

System.out.println(128>>2);// a/2^b=128/2^2

// 2最快形式形式变成8

int num = 2;

num=num<<2;

System.out.println(num);

}

}

位运算与逻辑也能算差异:

// &,| 和 &&,||

//      1.  都可以参加逻辑运算。

// 2.  前者可以参加位运算,后者不可以

//   3.后者有短路性,前者没有


####三元运算符

public class Demo12 {

public static void main(String []args) {

//条件运算符(三元运算符),?

//表达式1 ? 表达式 2: 表达式2

int num = 145 > 999 ?145 : 999;

System.out.println(num);


int year =1965;

System.out.println(year%4 == 0 && year%100 != 0 || year%400 == 0 ? "闰年" : "平年");

}

}

#######临时变量互换法

public class Practice2 {

public static void main(String []agrs) {

//互换x、y

int x = 5;

int y = 7;

// 方法1 临时变量

// int z;

// z=x;

// x=y;

// y=z;

//方法2 加 减法    乘除法

// x=x+y;

// y=x-y;

// x=x-y;

// 方法三:位运算

x = x^y;

y=x^y;

x=x^y;

System.out.println(x+","+y);

}

}

###########运算兼容

public class Demo {

public static void main(String[] args) {

//      运算兼容

// 向范围大的方向兼容

//    int num1 = 10;

//    long num2 =20;

//    int num3 = num1 +(int)num2;

//    System.out.println(num3);

// btye,short,char,int <兼容方向只有  int

// byte num1 = 9;

// short num2 = 10;

// short num3 =num1 +num2;

short num1 = 99;

//num1= (short)(num1 +2);  没有把2转换为short类型;

  num1+=2;  //自动把 int 2转换为 short

}

}


##########//阻塞操作 :nextInt(),nextByte(),nextShort()

//nextline()包含空格  next()只要有空格代表结束。

// nextline()包含空格 next()只要有空格代表结束。

str = scan.nextLine();


############类型转换

public class Demo2 {

public static void main(String[] args) {

// 类型转换

//       1.自动类型转换:俩种类型,彼此兼容,目标类型取值范围大于原类型;

// byte num1 = 12;

// int num2 = num1;

//       2.强制类型转换:俩种类型不太兼容,目标类型物质范围小于原类型;

// long num1 = 128 ;

//

// int  num2 = (int)num1;//强制  转换                              类型 1  数值1=(类型1)数值2;

// short num3 = (short) num2;

// byte num4 = (byte)  num3;

// System.out.println(num4);//溢出    损失精度;

char c1 ='A';

System.out.println((char)(c1+32));

}

}

你可能感兴趣的:(2019-02-26)