java入门(1)
java开发环境搭建
由于我已经搭建过java环境, 具体jdk下载和环境变量的配置在此不过多赘述,其他博主的很多文章都写得很详细,我当时也参考过,主要是展示一下成功搭建jdk的测试,需要用到cmd中的命令行: 打开cmd后输入 java -version进行测试:
或者输入java或者javac等命令均可
对于版本问题,我当时先下载的jdk8,但是测试不成功,删除后又下载了jdk11,测试成功后就一直用了。
下载时需注意不要将下载完成后产生的文件夹胡乱移动或者删除,都可能会造成无法编译的后果。(问就是我干过...)
注:文件拓展名为.java的文件均可在jdk环境下run起来
java基础语法
由于学校教学重点在于面向对象编程,java语言只是用于实现面向对象需求,因而没有全面讲解java的基础语法,所以再次以语法内容复习java语言。并且不是零基础,所以将有用的、我还没熟练掌握的内容详细记一下,一些简单的编程思想(c语言学习过的内容)以及最基本完成面向对象编程需要熟练掌握的Java知识就不做重点记录了。
注释
注释并不会被执行
-
单行注释
//注释内容 可以注释一行文字
-
多行注释
/*
注释内容
*/
可以注释一段文字
-
文档注释(javadoc)
/*
*注释内容
*
*/
遵循javasun编码规范来编写javadoc
标识符
-
所有的标识符都应以字母(大小写均可)、美元符$或者下划线_开始
-
不能使用关键字作为变量名或者方法名
数据类型
-
long类型要在数字后面加l/L,由于l与1不易辨认,一般用L
-
float类型后面加f/F
-
String 不是关键字,是一个类
-
Boolean 只有true/false两个值
Scanner
-
可以通过Scanner类来获取用户的输入,通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取之前我们一般要使用hasNext()与hasNextLine()判断是否还有输入的数据。
-
next():
-
一定要读取到有效字符后才可以结束输入
-
对于输入有效字符之前遇到的空白,next()方法会自动将其去掉
-
只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
-
next()不能得到带有空格的字符串
-
-
nextLine():
-
以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
-
可以获得空白
-
-
注:Scanner用处较为广泛,在很多地方都会用到(我印象中用过好多次,但是当时不太清楚具体用法)
方法的重载
-
重载就是在一个类中,有相同的函数名称,但形参不同的函数,注意区分与方法覆写(重写)的区别
-
方法重载的规则:
-
方法名称必须相同
-
参数列表必须不同(个数不同、类型不同、参数排列顺序不同等)
-
方法的返回类型可以相同也可以不同
-
仅仅返回类型不同不足以成为方法的重载
-
可变参数
-
JDK1.5开始,Java支持传递同类型的可变参数给一个方法
-
在方法声明中,在指定参数类型后加一个省略号 public void max (int m, double... n){ }
-
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通参数必须在它之前声明
数组
-
数组的声明:
int[] a; 建议使用
int a[]; 可以运行,但不建议使用
-
数组的创建
使用new操作符来创建数组:
int[] a = new int[2];
-
数组的长度:
调用.length即可获取该数组的长度
for(int i = 0; i < a.length; i++);
for(int i = 0; i <= a.length; i++);
-
数组的初始化:
//静态初始化:
int[] a = {1,2,3};
Man[] mans = {new Man(1,1),new Man(2,2)};
//动态初始化:
int[] a = new int[2];
a[0] = 1;
a[1] = 2;
//默认初始化:一经分配空间,按照实例变量同样的方式被隐式初始化
-
数组的边界:
-
下标的合法区间:[0,length - 1]
-
如果越界则会报错:
ArrayIndexOutOfBoundsException :数组下标越界异常
-
-
Arrays类
-
数组的工具类(用import导入)java.util.Arrays
-
具体可查看Arrays的JDK帮助文档
-
Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而不一定非要使用对象来调用
-
常用功能如下:
-
给数组赋值:fill方法
-
对数组排序:sort方法,按升序
-
比较数组:equals方法比较数组中元素是否相等
-
查找数组元素:binarySearch方法能对排序好的数组进行二次查找法操作
-
-