【Java回顾】Java语言基础

一、数据类型

Java语言中的数据类型分为两大类:

  • 基本数据类型(primitive types)
  • 引用数据类型(reference types),简称引用类型

1、基本数据类型

(1)定义

由程序设计语言系统所定义、不可再划分的数据类型。

(2)特点

  • 所占内存的大小固定,与软硬件环境无关
  • 内存中存放的是数据值本身

(3)分类

Java的基本数据类型共8种,分为4类:

  1. 整型:byte,short,int,long
  2. 浮点型:float,double
  3. 布尔型:boolean
  4. 字符型:char

2、引用数据类型

(1)特点

在内存中存放的是指向该数据的地址,不是数据值本身

二、基本数据类型

1、基本数据类型汇总

数据类型关键字占用字节数默认值
布尔型boolean1true
字节型byte10
短整型short20
整型int40
长整型long80L
单精度浮点数float40.0F
双精度浮点数double80.0D
字符型char2‘\u0000’

2、数值型数据的最值

(1)整型
最大值:类全名.MAX_VALUE
最小值:类全名.MIN_VALUE

(2)浮点型

  • 正数范围:
    最大值:类全名.MAX_VALUE
    最小值:类全名.MIN_VALUE
  • 负数范围
    最大值:- 类全名.MAX_VALUE
    最小值:- 类全名.MIN_VALUE

3、Java隐含数据类型

  • 整数:隐含为整型(int)
  • 浮点数:隐含为double型。注:double型占8个字节,有效数字最长为15位。浮点数并不是精确数

三、关键字与标识符

1、关键字

2、标识符

(1)规定

  • 标识符可以由字母、数字、下划线和美元符号($)等组成,但不能以数字开头。
  • Java严格区分字母大小写。例如,hello和Hello是不同的标识符

(2)Java编码习惯

<1>类名首字母大写,变量、方法以及对象的首字母小写;
<2>所有的标识符采用驼峰命名规则;
<3>定义常量,大写所有字母;
<4>Java包名,全部小写字母

四、常量

常量:在程序运行的整个过程中保持其值不改变的量

1、final关键字

声明常量的关键字

final int MAX = 10;
final float PI = 3.14;

五、变量

六、数据类型转换

1、自动类型转换

又称“隐含类型转换”,类型转换过程由编译系统自动完成

(1)需要满足的条件(同时成立)

  • 转换前的数据类型和转换后的数据类型兼容
  • 转换后的数据类型的表示范围比转换前数据类型的表示范围大(短–>长,扩大转换)


1、byte–>short–>char–>int–>long–>float–>double
2、byte、short、char之间不会相互转换,他们三者在计算时首先转换为int类型
3、boolean类型不能与其它数据类型运算
4、当把任何基本数据类型的值和字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型

2、强制类型转换

方法:
在变量的前面加上想要转换的数据类型;强制转换符:()。在缩小转换时,可能会损失精度


1、通常,字符串不能直接转换为基本类型,但通过基本类型对应的包装类则可以实现把字符串转换成基本类型

String a = "43";
int i = Integer.parseInt(a);

2、boolean类型不可以转换为其它的数据类型

3、字符串与数值型数据的相互转化

(1)字符串–>数值型

数字字符串数据转换成byte、short、int、long、float、double等数据类型,“true”、“false”字符串转换成对应的布尔类型,使用XXX.parseXXX(String s)方法
例如,

String myNumber = "123.456";
float myFloat = Float.parseFloat(myNumber);

(2)数值型–>字符串

字符串连接符"+",自动实现类型转换

七、获取键盘输入的数据

1、InputStreamReader + BufferedReader

java.io.* 库中提供

public static void main(String[] args) throws IOException{
	BufferedReader buf;
	buf = new BufferedReader(new InputStreamReader(System.in));
	String str1,str2;
	str1 = buf.readLine();
	str2 = buf.readLine();
	.......
}

注:
此种输入方式,从键盘输入的所有内容都被视为字符串

2、Scanner类

java.util.* 库中提供

public static void main(String[] args){
	Scanner reader = new Scanner(System.in);
	double num;
	num = reader.nextDouble();
	.......

(1)reader对象的可选方法:

  • nextByte()
  • nextShort()
  • nextInt()
  • nextLong()
  • nextFloat()
  • nextDouble()
  • next()
  • nextLine()
  • hasNextXXX()

(2)next()和nextLine()区别

  • next()方法:该方法一定要读取有效字符后才可以结束输入,对输入有效字符之前遇到的空格、Tab键或回车键等,该方法自动将其去掉,只有在输入有效字符后,该方法才会把空格、Tab键或回车键视为分隔符或结束符;
  • nextLine()方法:结束符只是回车键,即返回的是回车键之前的所有字符。

八、运算符与表达式

二元运算符
一元运算符
关系运算符
逻辑运算符
位运算符
赋值运算符
条件运算符

注意点

  • 1、不能在浮点数之间做“==”的比较
  • 2、逻辑运算符&和&&,|和||的区别:&&被称为简洁与,||被称为简洁或,它们会发生短路现象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值