Java读书笔记02 基础知识

本文为我开始学习Java的记录2,这是看书(《JAVA 2核心技术 卷Ⅰ》)摘抄的一些基本知识。

主要包括:基本程序、数据类型、变量、运算符、字符串。

都是简单的介绍,没有什么深入讨论。

因为之前学过C++和C#(据说它和Java很像,但是我也只是略知一二),所以和C++一样的,并且耳熟能详的那些知识就不写了。

1.Java的简单知识

Java区分大小写。

程序中的所有内容都必须放在类中。

源代码的文件名必须与公有类的名字相同,并用ClassName.java作为扩展名。

编译代码时,会得到一个包含该类字节码的文件,自动命名为ClassName.class文件。

使用java ClassName运行编译程序时,Java虚拟机将从指定类中的main方法开始执行。

main方法必须是静态的。 Public static void main(String[] args)

2.数据类型

基本数据类型(8种):

数值类型:

整型:byte, short,int, long(依次占据1、2、4、8字节)

浮点型:float,double(分别占据4字节和8字节)

字符类型

char

char这个类型很神奇,发现里面居然可以放汉字。

布尔类型

boolean

说明

Java中所有的数值类型占据的字节数量与平台无关。

Java没有任何unsigned类型。

Java使用16位的Unicode字符集。

转义序列符:\u

Java中boolean类型的值true和false不能与数值类型进行相互转换。

如果没有初始化成员变量就开始使用,那么每个类型的成员变量都有一个默认的初始值:

byte、short、int、long类型的初始值为0

float、double类型的初始值为0.0

char类型的初始值'\u0000'

boolean类型的初始值为false

3.变量

Java中不区分变量的声明与定义。

Java中的变量名:以下划线、字母、$符号开头,并且后跟下划线、字母、$符号以及数字,不能以数字开头

Java中,利用关键字final声明常量。

例如:

final double INCH=2.5;

关键字final表示这个变量只能被赋值一次,一旦赋值后就不能更改。

可以使用关键字static final设置一个类常量。

4.运算符

除以零:

整数被0除将会产生一个异常。

而浮点数被0除将会得到无穷大或NaN。

位运算符:

&&和||按照短路方式求值,但位运算符&和|不按短路方式进行计算。

>>和<<进行二进制位的右移或左移,当需要构建位模式屏蔽某些位时,使用这两个运算符十分方便。

>>>运算符将用0填充前面的位;>>运算符用符号位填充左边的位,没有<<<运算符。

对移位运算符右侧的参数需要进行模32的运算。

数学函数与常量:

Math类中,包含了各种数学函数。

从JDK 5.0开始,不必在数学方法名和常量名前添加前缀Math,只要在源文件的顶部加上下列内容:

Import static java.lang.Math.*;

5.字符串

标准类库中提供了预定义类String。

字符串由char值序列表示。char数据类型是一个采用UTF-16编码表示Unicode代码点的代码单元。大多数的常用Unicode字符使用一个代码单元就可以表示,而辅助字符需要一对代码单元表示。

length方法将返回采用UTF-16编码表示得给定字符串所需要的代码单元数量。

substring方法提取子串,第二个参数为不想复制的第一个代码单元,s.substring(a,b)将包含b-a个代码单元。

不能修改字符串中的字符。不可变字符串的优点:编译器可以将字符串共享。

字符串存放在公共存储池中,字符串变量指向池中相应的位置。

Java字符串不是字符型数组,而是char* 指针。

两个字符串可以用+号拼接。

检测字符串相等:

使用equals方法检测两个字符串是否相等。如果不区分大小写,可以使用equalsIgnoreCase方法。

==运算符只能够确定两个字符串是否被放置在同一个位置。

posted @   圣骑士wind  阅读(1433)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示