这是本人自己在学习java过程中的一些笔记,在这里整理方便以后查看,笔记包含网课的知识点以及遇到问题时从各网页得到的解答,都是一些杂七杂八的知识点,哈哈哈哈,有错误欢迎大家批评指正。
入门知识
javac----- 源文件
.java------编译文件,生成.class文件
java-----源文件,运行文件中的类
public类只能有一个,且类名与文件名相同
public static void main(String[] agrs)//主方法
注释方法
//单行注释
/*
多行注释
多行注释
多行注释
*/
/**
文档注释,生成API
*/
数据类型
- 基本数据类型:整数(int),小数(double),布尔(bool),字符(char)
2. 引用数据类型:字符串,数组,对象
自动类型转化(低->高),即byte,short,char---->int---->long---->float---->double
byte | 1字节 |
short | 2字节 |
int | 4字节 |
long | 8字节 |
float | 4字节 |
double | 8字节 |
boolean | 1字节 |
char | 2字节 |
Java输入语句
1.先导包import java.util.Scanner
2.创建对象Scanner sc=new Scanner(System.in);
3.接收数据
- int n=sc.nextInt();
- float n=sc.nextFloat();
- double n=sc.nextDouble();
- String n=sc.nextline(); //以Enter为结束符
- String n=sc.next(); //以空格为结束符
原码、反码和补码
原码(最高位“1”表示负号,“0”表示正号)
反码:正数为原码,负数为除最高位外,其余按位取反
补码:正数为原码,负数为反码+1
自增自减运算符
单独使用的时候,++和--无论是放在变量的前边还是后边,结果是一样的。
参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作。
例如 a++=10;//10先赋值给a,然后a自增1 ++a=10;//a先自增1,然后10赋值给a
数组的使用
格式:数据类型(char,int,float……) +[]+变量名=new 数据类型[数组长度]
例:(元素类型为int类型的数组) int[] arr=new int[3];
获取数组元素:
-
int[] arr={......};
-
int[] arr=new int[]{.....}
-
arr[0]=...,arr[1]=...
字符串与整数相互转化的方法
遇过的坑
- idea的版本要与相应的jdk版本配置,才能输出正确的编码。(新手时期踩到的大坑)
- 使用预先指针的目的在于链表初始化时无可用节点值,而且链表构造过程需要指针移动,进而会导致头指针丢失,无法返回结果
-
回车(\r):CR(Carriage Return的缩写,Ascii码是13),告诉打字机需要“把打印头定位在行首”;
换行 (\n) :LF(Line Feed的缩写,Ascii码是10),告诉打字机“把打印纸向下移动一行”;
-
在Windows系统中,换行符和回车符是成对出现的,表示为"\r\n"。而在Unix/Linux系统中,只使用换行符"\n"。为了保持跨平台的兼容性,BufferedReader默认只读取换行符,而不读取回车符。
-
break只跳出最里面一层for循环,如果是标签break outer,则break跳出两层循环
-
StringBuffer和StringBuilder都是可变字符序列,常用方法有append()、insert()、length()和CharAt(),但StringBuilder不保证线程同步,通常优先使用StringBuilder,因为它支持所以相同的操作,并且速度更快
-
java中,基本数据类型,长整型long和浮点型float使用时后面要分别加l和f;