java核心技术卷— 笔记(二)

Java 的基本程序设计结构

这节主要学习:
1.第一个java程序
2.注释
3.数据类型
4.变量
5.运算符
6.字符串
7.输入输出
8.控制流程
9.大数值
10.数组

1.第一个Java程序

编写java代码程序需要注意大小写.

public class FirstSample{
	public static void main(String []args){
		System.out.println("hello,java");
	} 
}

分析上面代码
1.关键字public 是访问权限修饰符,用于控制程序的访问级别。
2.关键字class表明 Java 程序中的全部内容都包含在类中。
3.FirstSample是类名,可以自定义,但是不可以用Java的保留字(如public class等等。。),名字必须以字母开头,后面可以跟字母和数字的任意组合。长度基本上没有限制。
4.源代码的文件名必须与公共类的名字相同,并用 .java 作为扩展名。
5.代码必须放在{}中
6.每个 Java 应用程序都必须有一个 main 方法

2.注释

java注解和其他语言一样,在执行程序中不会被执行,方便程序员更好的管理代码块。
2.1 java的三大注释方法

第一种 ://
第二种:/* 和 */
第三种:/**开始, 以 */

Java的注释不能嵌套!!!

3.数据类型

java是一种强类型语言,每一个变量都必须声明类型。

在java中一共有8种基本类型

整型4种:int shor long byte
浮点型2种:flout double
char类型
booleam类型

3.1整型

整型用于表示没有小数的数值,它可以是负数。
类型 | 存储需求

类型存储需求取值范围
int4字节-2 147 483 648 - 2 147 483 647 (正好超过 20 亿)
long8字节-9 223 372 036 854 775 808 - 9 223 372 036 854 775 807
short2字节-32768 - 32767
byte1字节-128~127

通常情况下用int,如果数值过大则long,而short和byte用于特定的应用场景。(例如,底层的文件处理或者需要控制占用存储空间量的大数组。)

3.2浮点型

浮点类型用于表示有小数部分的数值。

类型存储需求取值范围
float4字节大约 ± 3.402 823 47E+38F (有效位数为 6 ~ 7 位)
double8字节大约 ± 1.797 693 134 862 315 70E+308 (有效位数为 15 位

绝大部分情况下都使用double类型。

float 类型的数值有一个后缀 F 或 f (例如,3.14F。) 没有后缀 F 的浮点数值(如 3.14 ) 默认为 double 类型。当然,也可以在浮点数值后面添加后缀 D 或 d (例如,3.14D)。

浮点数值计算都遵循 IEEE 754 规范。

浮点型溢出和出错的情况:
1.正无穷大
2.负无穷大
3.NaN(不是一个数字)
例如, 一 正整数除以 0 的结果为正无穷大。计算 0/0 或者负数的平方根结果为 NaN。

浮点数值不适合用于金融计算种,因为浮点数值是采用二进制系统表示,而二进制无法精确的表示计算的结果(它会采用舍入误差的方式)例如:( 2.0-1.1 ) 将打印出 0.8999999999999999

char类型

现在的char类型不单单表示一个字符,一些Unicode字符可以用一个char值表示,而另外一些则需要两个char值。

Unicode 和 char 类型

1.Unicode 是java 中使用的编码表(类似C语言使用ASCII码)。UTF-16是一种编码方式
2.码点:编码表中一个字符对应的编码值(数值)。如:\b(退格字符)对应的Unicode值----\u0008 (采用十六制书写并加上前缀U)
3.代码单元 :每个字母用十六位表示。对码点编码得到一个或者两个16位序列
4.char 是一个采用(每个字母用十六位表示。对码点编码得到一个或者两个16位序列)方法表示的的代码单元

boolean 类型

boolean (布尔)类型有两个值:false 和 true, 用来判定逻辑条件 整型值和布尔值之间不能进行相互转换。

变量

java声明变量时,变量的类型位于变量名之前。如:double xxx; int xxx;
在Java中“字母”和“数字”的范围更大,字母包括 ‘A’ ~ ’Z’, ’a’ ~ ’z‘,’_‘,’$‘,或在某种语言中表示字母的任何 Unicode 字符。

如果想要知道哪些 Unicode 字符属于 Java 中的“ 字母”, 可以使用 Character 类的isJavaldentifierStart 和 isJavaldentifierPart 方法来检查。
另外, 不能使用 Java 保留字作为变量名

变量初始化

声明一个变量之后,必须用赋值语句对变量进行显式初始化, 千万不要使用未初始化的变量。

//第一种使用方式,在声明的同时初始化变量
double salary=200;
System.out.println(salary);

//第二种方式,声明了变量,然后在赋值
double salary2;
salary=300;
System.out.println(salary);
常量

在 Java 中, 利用关键字 final 指示常量。在习惯上要养成常量名全大写。

//使用了final之后,只能赋值一次,一旦赋值以后不能更改。在习惯上要养成常量名全大写。
public class Constans{
	public static void main(String []args){
		final double CM_PER_INCH=2.54;
		Systrm.out.println(CM_PER_INCH);
	}
}

在java中,经常希望某个常量可以在一个类中的多个方法使用,通常把这种类称为类常量。使用 static final设置为常量类。

public class Constans2{
	//类常量定义在方法之外(包括main方法).
	public final double CM_PER_INCH=2.54;
	public final double AAA=333;
	
	public static void main(String []args){
		Systrm.out.println(CM_PER_INCH+AAA);
	}
}

如上在类常量前面加public,那么其他的类也可以使用这个常量。使用方法:类名.类常量名(如:Constans2.CM_PER_INCH)。

运算符

Java 中,使用算术运算符 +、-、 *、/ 表示加、减、 乘、除运算。整数的求余操作用 % 表示。
整数被 0 除将会产生一个异常, 而浮点数被 0 除将会得到无穷大或 NaN 结果。
使用 strictfp 关键字标记的方法必须使用严格的浮点计算

数学函数与常量

Math类中,包含了各种各样的数学函数。
1.计算个数值的平方根使用:sqrt方法:Math.sqrt(x)
2.幂运算使用pow方法:Math.pow(x,a);
3.floorMod 方法的目的是解决一个长期存在的有关整数余数的问题。
4常用的三角函数:Math.sin | Math.cos | Math.tan | Math.atan | Math.atan2
5.有指数函数以及它的反函数—自然对数以及以 10 为底的对数:Math.exp |
Math.log | Math.loglO
6.表示 TC 和 e 常量的近似值:Math.PI | Math.E

数值类型之间的转换

在这里插入图片描述

强制类型转换

强制类型转换的语法格式是在圆括号中给出想要转换的目标类型,后面紧跟待转换的变量名。

double x=9.997;
int nx=(int)x;
//结果:9

如果想对浮点数进行舍人运算,使用Math.round方法

double x=9.997;
int nx=(int)Math.round(x);
//结果:10
结合赋值和运算符

使用二元运算符:

x +=4;等价于 x=x+4;
(一般地, 要把运算符放在 = 号左边,如 *= 或 %=)

自增与自减运算符

前缀形式会先完成加 1; 而后缀形式会使用变量原来的值。
i++
++i
i–
–i

关系和 boolean 运算符

Java包括丰富的关系运算符。要检测相等性,可以使用两个等号==。(3==7的值返回为false)另外,3!=7,返回值为true。最后,还有经常使用的<(小于)、>(大于)、<=(小于等于)、>=(大于等于)运算符。

在Java中,使用&&表示逻辑“与”运算符,使用||表示逻辑“或”运算符。而且Java支持三元操作符?:。如果条件为true,表达式为:条件?操作1:操作2,则执行操作1。

位运算符

处理整型类型时,可以直接对组成整型数各个位完成操作。这意味这可以使用掩码技术得到各个位。位运算符如下:

&(“and”) |(“or”) ^(“xor”) ~(“not”)
还有>> 和 << 运算符将位模式左移或右移
·>>>运算符会用 0 填充高位,这与>>不同,它会用符号位填充高位。不存在运算符

运算符的优先级

在这里插入图片描述

枚举类型

变量的取值只在一个有限的集合内。
针对这种情况, 可以自定义枚举类型。枚举类型包括有限个命名的值。

//自定义枚举类型
enum Size{SMALL,MEDIUM,LARGE,EXTRA_LARGE};
//使用自定义枚举
Size ss=Size.SMALL;

Size 类型的变量只能存储这个类型声明中给定的某个枚举值,或者 null 值,null 表示这个变量没有设置任何值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值