Java基础学习2

常量

常量:值不能改变的量

  整数、小数、字符、字符串、布尔、空常量
  字符:用单引号引起来的内容  'a'  '中'
  布尔类型:表判断结果   true   false
  字符串类型:双引号引起来的数据 "hello"
  空常量:NULL

public class TestVar {
    public static void main(String[] args) {
	 System.out.println("HelloWorld");//字符串常量
	 System.out.println("1");//整数常量
	 System.out.println("1.5");//小数常量
	 System.out.println('H');//字符常量
	 System.out.println(true);//布尔类型常量
	 System.out.println();//打印并换行
	 System.out.print();//打印不换行
 }
}

变量

变量:值可以改变的数据 计算机内存中的一块存储空间,是存放数据的基本单元。

变量的组成:数据类型,变量名,数据

变量的使用:

​    1.声明一个变量:数据类型  变量名;
​    2.为变量赋值:变量名 = 值;
​    3.使用变量:直接使用变量名即可

public class TestVar2 {
public static void main(String[] args) {
	//声明变量
	int money;
	//为变量赋值
	money = 100;
	//使用变量的值
	System.out.println(money);
	//改变变量的值
	money = 200;
}
}

变量定义的其他方式

1.先声明再赋值
​                    数据类型   变量名;变量名 = 值;
​2.声明并赋值
​         数据类型   变量名 = 值;
​3.同时定义多个相同类型的变量
​          数据类型 变量名1 = 值1,变量名2= 值2;

    int a = 100;
	System.out.println(a);
	int c = 0, e = 100;
	System.out.println(c);
	System.out.println(e);

计算机的存储单元

计算机设备的最小存储单元 :bit  两种可能 0 1
计算机存储数据的最小单元为 : 字节  Byte  1B=8b  2^8个数

数据类型

基本数据类型(简单数据类型):8种  byte  short   int  long  float  double  char  boolean
​引用数据类型(对象数据类型)  :  类(String)  接口  数组

字面值:能够为程序中的某一个数据类型赋的值
​    Byte类型:  1B   -128~127                                 -2^7-2^7-1
​    short类型:2B   -32768-32767                         -2^15-2^15-1
​    int类型:     4B   -2147483648-2147483647    -2^31-2^31-1
​    long类型:  8B                   -2^63-2^63-1

    float类型:4B
​    double类型:8B

注意:整数的数据类型默认为int,如需为long类型赋值需要在值的后面加上L/l,建议加L,小数的数据类型默认为double,如需为float类型赋值需要在值的后面加上F/f。小数可以使用科学计数法,float的取值范围比long的范围大编码
​    char类型:2B   用单引号引起来的单个字符  支持Unicode编码(GBK(大陆)  Big5(*)),支持ASCII

public static void main(String[] args) {
	long L1= 1;
	System.out.println(L1);
	long L2= 2147483648L;
	System.out.println(L2);
}
}

表示方式:字符表示,整数表示,16进制表示

转义字符:

   \\'     单引号
​    \\    反斜杠
​    \t     空格
​    \n    换行

char c4 = '\'';
		System.out.println(c4);
		//打印反斜杠
		char c5 = '\\';
		System.out.println(c5);
		//打印空格
		char c6 = '\t';
		System.out.println(c6);
		//打印换行
		char c7 = '\n';
		System.out.print(c7);

引用类型:String就是用双引号引起来的多个字符。

类型转换:

自动类型转换:

要求:1.两种类型必须相互兼容
​           2.目标类型必须要大于原类型(取值范围)
​           直接转换:目标类型  变量名 = 原类型的变量名

强制类型转换:

  要求:1.两种类型必须相互兼容
​             2.目标类型要小于原类型(取值范围)
​             强转语法:目标类型  变量名 = (目标类型)原类型的变量名;

强转结果
        1.大类型转小类型  高位截取,只保留地位
                  1.大类型为正数,结果还是正数    
                  2.大类型为正数,结果还是负数

        2.小数转换成整数      小数位砍掉只保留整数位
                  double d = 1.5;   int a = (int)d ; a = 1;
        3.char 类型可以直接转换成 Int  long   float  double
        4.char 类型可以和short进行转换,但必须强制

​    类型提升

1.两个数做运算,如果有一个为double类型,则结果为double类型。

2.两个数做运算,如果有一个为float类型,则结果为float类型。

3.两个数做运算,如果没有double和float类型,有一个为long类型,则结果为long类型。

4.两个数做运算,如果没有double和float,long类型,有一个为int类型,则结果为int类型。

5.其他情况均为int类型

运算符

算术运算符

 +加
 -减
 *乘
 /除
 %模

布尔类型不能参与运算

 一元运算符

++   表示自增    给变量的值加一

--     表示自建    给变量的值减一

a++和++a的区别

a++:先使用再+1   先将a的值给表达式(a++),然后再给a的值+1

​++a先将a的值+1再使用  将a的值+1,然后赋值给表达式++a

赋值运算符

=     将右边的值赋值给左边

+=    将左边的值加上右边的值再复制给左边

-=    将左边的值减去右边的值再复制给左边

*=    将左边的值乘上右边的值再复制给左边

/=    将左边的值除以右边的值再复制给左边

比较运算符

<      >       <=      >=      != 比较左右不相等         == 比较左右相等

逻辑运算符

&&:且  都为真为true

||:或    都为假为false

&:且  都为真为true

|:或    都为假为false

!:取反

&&与&区别

&&:短路运算符        当前者为false,后者不再判断,结果为false

&:非短路运算符        前者为false,后者继续判断,结果为false

三元运算符

布尔表达式  ? 值1  :值2;

执行过程:首先判断布尔表达式,若为true则取值1,否则取值2

Scanner

 Scanner 让用户自己输入

用法

//java.util 报名 权限类名
java.util.Scanner sc = new  java.util.Scanner(System.in);

//快捷键导包 ctrl+shift+o
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
//导包不建议使用*
import java.util.*;

//要求输入的是一个整数
int n = sc.nextInt();
System.out.println(n);
//要求输入的是一个小数
Double n = sc.nextDouble();
System.out.println(n);
//要求输入的是一个字符串
String n = sc.next();
System.out.println(n);
//要求输入的是单个的字符
char n = sc.next().charAt(0);
System.out.println(n);

String n1 = sc.next();//next可以将回车和空格作为语句结束
String n2 = sc.next();

String n1 = sc.nextLine();//nextLine只能以回车作为语句结束

System.out.println(n1);
System.out.println(n2);



 

上一篇:java基础自学入门笔记(二)


下一篇:(笔记)Dos命令