2022年12月7日日志主要内容:
常用类
reverse:字符串反转
String string = "abcde";
StringBuffer sb = new StringBuffer(string);
System.out.println(sb.reverse());
Runtime.getRuntime:可以取得当前JVM的运行时环境,这也是在Java中唯一一个得到运行时环境的方法
currentTimeMillis:返回的是以毫秒为单位的当前时间,把时,分,秒,的单位都转化为毫秒了,就比如说1317275380357 就是13:49,多少秒,多少毫秒
package cn.soufu;
public class Test4 {
public static void main(String[] args) {
Runtime runtime = Runtime.getRuntime();
long time = System.currentTimeMillis();
System.out.println(time);
//2022-12-07
}
}
集合
package cn.soufu;
import java.util.ArrayList;
public class Test5 {
public static void main(String[] args) {
//创建ArrayList
ArrayList<String>list = new ArrayList<String>();
list.add("dv");
list.add("sd");
list.add("cv");
//length size
int size = list.size();
System.out.println(size);
//drop delete remove
list.remove("cv");
size = list.size();
System.out.println(size);
//get
System.out.println(list.get(0));
//update set
list.set(0,"dvv");
}
}
遍历
package cn.soufu;
import java.util.ArrayList;
public class Test6 {
//遍历
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("dv");
list.add("sd");
list.add("cv");
int size = list.size();
for (int i=0;i<size;i++){
System.out.println(list.get(i));
}
}
}
算法
冒泡排序
冒泡排序:这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
package com.gm;
//冒泡排序
public class Bubble {
public static void main(String[] args) {
int[] arr = {18,13,50,15,4,17,18};
System.out.println("arr的排序前:\n18 13 50 15 4 17 18 ");
int temp = 0;
for(int i = 0 ;i< arr.length -1; i++){
for(int j = 0; j<arr.length-1-i; j++){
if(arr[j]>arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
System.out.println("arr排序后:");
for(int i = 0; i<arr.length; i++){
System.out.print(arr[i]+"\t");
}
}
递归算法
递归算法在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。递归式方法可以被用于解决很多的计算机科学问题,因此它是计算机科学中十分重要的一个概念。绝大多数编程语言支持函数的自调用,在这些语言中函数可以通过调用自身来进行递归。计算理论可以证明递归的作用可以完全取代循环,因此在很多函数编程语言(如Scheme)中习惯用递归来实现循环。
public static void main(String[] args) {
int n = 3;
int ret = factor(n);
System.out.println("ret = " + ret);
}
public static int factor(int n) {
if (n == 1) {
return 1;
}
return n * factor(n - 1);
}
ret = 6
集合框架
![在这里插入图片描述](https://img-blog.csdnimg.cn/5000833654984186b33a14c7c92d5aac.gif#pic_center
从上面的集合框架图可以看到,Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set 和 Queue,再下面是一些抽象类,最后是具体实现类,常用的有 ArrayList、LinkedList、HashSet、LinkedHashSet、HashMap、LinkedHashMap 等等。