目录
一.简介
浏览了好些相关博客,打算换个方式做笔记,采用迭代的方式去记录遇到的知识点,这样效率会更高一些,而且实践出真知,遇到再总结,印象会更深。
二.预写头
public class Main{
public static void main(String[] args){
//······(相关内容)
}
}
三.输入输出
————————————————————输入————————————————————
Scanner scan = new Scanner(System.in); //写起来比较简便,但内存效率低,考试节省时间用。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //效率更高,但写起来比较麻烦,一般刷榜用。
scan.next():int|String|etc. //遇到空格则终止接受输入
scan.nextLine():int|String|etc. //可以接受包含空格的字符串
scan.nextInt(); //可以直接获取除String类型的数据,以此类推
scan.nextDouble();
scan.hasNext():Boolean //控制输入用,判断是否输入完毕。
scan.hasNextLine():Boolean
br.readLine();
while(br.readLine()!=null){
//``````
}
————————————————————输出————————————————————
System.out.println(String outPut);
四.字符串操作
1.分割字符串
1)需求
2)代码实现
String str;
str.charAt(int index):char
输入想要获得的某个字符的下标(从0开始)
str.length():int
str.indexOf():int
str.lastIndexOf():int
str.split():String[]
str.trim():String
str.replace(char oldChar, char newChar):String
str.toLowerCase():String
str.toUpperCase():String
str.substring(int beginIndex, int endIndex):String
重点:正则表达式匹配,这一应用比较广泛,可以用来对字符串进行匹配,根据正则表达式我们可以做到验证 源字符串 与被验证字符串 的包含(包含一个或多个)、前缀、后缀、相等等关系。
这个在第六章单独总结。
str.matches("//regex"):boolean
StringBuilder sb = new StringBuilder();
sb.reverse():StringBuilder
sb.append(String s):StringBuilder
sb.delete(int start, int end):StringBuilder
sb.insert(int index,[int|char|String]):StringBuilder
sb.replace(int start, int end, String str):StringBuilder
sb.toString():String
五.结构体模拟
在预写头的基础上:
public class Main{
//结构体
static class A{
//属性
private [int|String|List|etc.] attr;
//构造函数
public A(){
//······初始化属性
this.attr=···;
}
//属性操作函数
public void setAttr([int|String|etc.] b){
this.attr = b;
}
public [int|String|List|etc.] getAttr(){
return this.attr;
}
//根据需求增加对该结构体的一些操作函数。
//······
}
//主函数
public static void main(String[] args){
//初始化结构体(对象)
A a = new A();
A[] a = new A[10];
for(int i=0;i<a.length;i++){
a[i] = new A();
}
//操作结构体(对象)
a.setAttr(···);
[] b = a.getAttr();
//······
}
}