1234567891011121314151617181920212223<template> <div> <h1>count:{{ obj2.name }}</h1> <button @click="handClick">点击</button> </div></template><script setup>import { reactive, ref } from "vue";const obj1 = reactive({ name:"hainoir",})//reactive 对多个变量使用const obj2 = ref({ name:"noirkl",})//ref 对单个变量使用;使用ref对多变量操作时,需要取value;const handClick = () =&g ...
Java字符串方法1.equals
eg:
12345String name = "Bro";boolean res = name.equals("Bro");System.out.println(res);
equal可以比较两个字符串是否相同,得到的结果是布尔值,即true or false。
2.length
得到字符串长度
3.charAt
eg:
123String name = "hainoir";char res = name.charAt(0);
可得到对应参数的字符,结果是h
4.indexOf
eg:
123String name = "hainoir";int res = name.indexOf(h);
可以得到参数字符的位置,结果是0;
5.isEmpty
eg:
123String name = "";boolean res = name.isEmpty();
可以判断字符串是否为空,结果类型是布尔值,得到true;
6.toUpperCase ...
1.prefix 前缀和数组 p[i] = p[i-1] + a[i];
优点:便于数组查找
2.diff 差分数组d[i] = a[i] - a[i-1];
优点:便于数组修改
3.二位前缀和p[i][j] = p[i-1][j] + p[i][j-1] - p[i-1][j-1] + a[i][j];
4.二维差分1.差分求法d[i][j] = a[i][j] - a[i-1][j] - a[i][j-1] + a[i-1][j-1]
以上这个求法,是将原式作为所求差分的前缀和。
2.标准求法d[i][j] += a[i][j];
d[i + 1][j] -= a[i][j];
d[i][j + 1] -= a[i][j];
d[i + 1][j + 1] += a[i][j];
两种求法一样,可以互相推导
eg:d[i + 1][j] -= a[i][j]; = d[i][j] -= a[i-1][j]
2.位运算双指针排序二分1.位运算 与:&
或:|
非:!
异或:^ (任何数,与0进行异或都等于0)eg:【a + b = 2(a & b)+ (a ^ b)】
移位:<< (左移),>>(右移)
取反:~
12bitset<n>(x) //将x转换为n进制x <<= 1 //将x左移一位
2.排序数组去重排序模板:
12345678910vector<int> a;for(int i = 1;i <= n;i++) { int num;cin >> num; a.push_back(num); //push_back,是vector数组的方法,且vector会自动更新长度 }sort(a.begin(),a.end()); //从小到大排序a.erase(unique(a.begin(),a.end()),a.end()); //unique作用: ...
C++中各类函数的用法1.bitset1bitset<n>(x) //将x转换为n进制数
2.vector1234567vector<int> a; //可以自动维护数组长度,适合用在增删查改数组上vector中的方法: a.push_back(n) //将放入a的最后一位 a.begin() //代指a的第一个数据的位置 a.end() //代指a的最后一个数据的位置 a.erase(x,y) //将a中的x——y范围的数据全部删除,此时vector会自动维护长度
3.reverse1reverse(x,y); //翻转数组中范围为x——y的元素
4.memset1memset(c, 0 ,sizeof(int) * (n + 1) ); //将c中在n+1之前的所有元素更改为0