本文最后更新于:2024年3月18日 下午
java课程的学习笔记,部分和c++重合的内容不做描述
一、安装java
下载java
去Oracle官网下载。
添加环境变量
在"系统变量"中进行添加
- 添加JAVA_HOME
选择“新建”,变量名为JAVA_HOME
,变量值为jdk的路径,例如C:\Program Files\Java\jdk-12.0.2
- 添加CLASSPATH
选择“新建”,变量名为CLASSPATH
,变量值为.;%JAVA_HOME%\lib;
- 添加Path
找到Path
项,双击打开(win7等直接在变量值最前面加),选择“新建”,变量值为jdk目录下bin文件夹的路径,例如C:\Program Files\Java\jdk-12.0.2\bin
测试是否安装成功
打开CMD
窗口,输入java -version
,有输出则说明安装完成。
二、基本数据类型
分类和长度
与c++一致,其中注意char型
类型 |
长度 |
初始值 |
范围 |
char |
16 bits |
‘\u0000’ |
‘\u0000~\uffff’ |
浮点数
默认为double型
- 十进制数形式
由数字和小数点组成,且必须有小数点。
如:0.123, 1.23, 123.0
- 科学计数法形式
如:123e3或123E3,其中e或E之前必须有数字,且e或E后面的指数必须为整数。
- float型的值,必须在数字后加f或F,如1.23f。
- double型的值,可以在数字后加d或D,如1.23D。
转义符
转义字符 |
含义 |
\n |
回车(\u000a) |
\t |
Tab(\u0009) |
\b |
空格(\u0008) |
\r |
换行(\u000d) |
\f |
换页(\u000c) |
\’ |
单引号(\u0027) |
\" |
双引号(\u0022) |
\ddd |
三位八进制 |
\udddd |
四位16进制 |
\|反斜杠(\u005c) |
|
三、输入输出
输出
使用System.out.print
进行输出
1 2 3 4 5 6 7 8 9 10
| System.out.print(); \\输出内容 System.out.println(); \\输出内容,并换行 System.out.printf(); \*支持占位符 %d: 输出int型数据 %c: 输出char型数据 %f: 输出浮点型数据,小数部分最多保留6位 %s: 输出字符串数据 %md: 输出的int型数据占m列 %m.nf:输出的浮点型数据占m列,小数点保留n位。 */
|
输入
使用输入需要先导入文件, import java.utli.*;
或import java.utli.Scanner;
进行使用时,需要先创建Scanner对象
1
| Scanner input = new Scanner(System.in);
|
在使用时使用input.next类型()
来读取输入内容,例:
1 2
| int x = input.nextInt(); float y = input.nextFloat();
|
四、函数、类格式差异
main函数
java main函数格式为
1 2 3 4
| public static void main(String[] args) {
}
|
类
类为
1 2 3 4
| public class balabala() { }
|
五、数组
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| arrayType arrayName[];
arrayType []arrayName;
arrayType arrayName[] = {elem1, elem2, elem3, ...};
arrayType []arrayName = {elem1, elem2, elem3, ...};
arrayTyoe arrayName[] = new arrayType[x];
arrayTyoe []arrayName = new arrayType[x];
arrayType arrayName[] = new arrayTyppe[x];
arrayName[i] = new arrayType[paramList];
String stringArray[] = new String[4]; stringArray[0] = new String("Welcome"); stringArray[1] = new String("To"); stringArray[2] = new String("My"); stringArray[3] = new String("Blog");
|
数组的复制操作,java提供System.arraycopy
函数来进行操作,格式为
System.arraycopy(SourceArray,sourcePositon,DestinationArray,DestinationPositon,number)
SourceArray
表示被复制的数组,DestinationArray
表示复制的数组,即Source->Destination
SourcePosition
表示从下标几开始复制,DestinationPosition
表示从下标几开始粘贴,number
表示复制几位。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| int array1[ ]={2,3,5,7,11,13,17}; int[] array2={101,102,103,104,105,106,107,108}; System.arraycopy(array1,2,array2,3,4); System.out.println("After copy, array2:"); for(int i=0;i< array2.length;i++) System.out.println("array2["+i+"]="+array2[i]);
After copy, array2: array2[0]=101 array2[1]=102 array2[2]=103 array2[3]=5 array2[4]=7 array2[5]=11 array2[6]=13 array2[7]=108
|
六、向量
向量是java.util包中的一个类,实现了类似 ==动态数组== 的功能,跟数组的区别是向量的容量是 ==可变== 的
- 向量的容量——向量的存储空间大小(最大下标)
- 向量的长度——向量的实际元素个数
- 向量的容量增量——当向量长度达到了容量时,容量的增加量
- 当容量增量为0时,当向量长度达到容量时,容量变为原来两倍
- 当容量增量不等于0时,当向量长度达到容量时,新容量=原容量+容量增量
1 2 3 4 5 6 7 8 9 10
| Vector <data Type> VariableName = new Vector <data Type>(parameter)
public Vector()
public Vector(int x)
public Vector(int x, int y)
|
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| Vector<String> v1 = new Vector<String>(5); v1.addElement(new String("one")); v1.addElement("three"); v1.addElement("four"); v1.insertElementAt("zero",0); v1.insertElementAt("two",2); v1.insertElementAt("five",5); System.out.println("v1:"+v1); System.out.println("v1的容量为:" + v1.capacity( )); Vector<String> v2 = new Vector<String>(5,1); v2.addElement("one"); v2.addElement("three"); v2.addElement("four"); v2.insertElementAt("zero",0); v2.insertElementAt("two",2); v2.insertElementAt("five",5); System.out.println("v2:"+v2); System.out.println("v2的容量为:" + v2.capacity( ));
v1:[zero, one, two, three, four, five] v1的容量为:10 v2:[zero, one, two, three, four, five] v2的容量为:6
|