java中 返回true or false
而在C语言中 返回0表示false 其余皆为true
隐式类型转换支持字节数小的类型自动转换为字节数大的类型,整数类型自动转换为小数类型,转换规则如下:
● byte→short(char)→int→long→float→double
是全长度参与计算 , 所以看似小的float也可以容纳long , 只是会丢失部分精度
显式类型转换也叫做强制类型转换,也就是说,违反隐式转换的规则,牺牲精度强行进行类型转换。
String builder
int a = 1;
int b = 2;
System.out.println(a+b);
// 输出 12 调用String builder方法相加
for无限循环
for (; ; ) {
//循环执行的内容
}
for(;?{}
while(true){}
算法问题收集:
相同
青蛙台阶问题
斐波那锲数列
通项公式
递归
if (n == 0 || n == 1) return 1;
return fib(n - 1) + fib(n - 2);
String是一个类 不是基本类型 String定义的变量也是引用类型的变量
scanner内部使用流 用完之后需要close();
在方法中 return是直接结束程序 break是跳出循环 然后继续向下执行
21点33分
基本类型只会传值 而引用类型会带着变量而变化
如果全部都有被调用 则顺序为
访问权限控制
public > protected > default(不指定) > private
封装 , 继承 , 多态
方法的重写
含义
将本来有的覆盖掉 体现了多态的 特性, 重载是 使方法 多样化
2022年10月17日09:47:34
@Override
使用该关键字进行说明检查
在子类重写后的方法中调用重写前的方法 达到再次使用的目的
使用super关键字
禁止重写
在方法中添加final关键字, 表示该方法已经是最终形态 , 不可再修改
final
用在方法中 只能重载 不能重写
static方法
无法使用this和super关键字
抽象
抽象类
抽象方法
定义在抽象类中的带有abstract关键字的方法
该方法由具体的子类来实现
以对象的形式使用基本类型
包装类:
Integer i = 10;
相当于
Integer i = Integer.valueOf(10);
因为包装的是一个类 不是基本类型 所以是两个不同的对象(虽然值相等)
Integer i = 11;
int a = i;
虽然是引用类型 但是可以借助自动拆装直接参与运算特殊的包装类型
BigInteger i = BigInteger.valueOf(100);
BigInteger o = i.multiply(BigInteger.TEN);
System.out.println(i);
System.out.println(o);
输出
100
1000
// 计算 幂
BigInteger a = BigInteger.valueOf(Long.MAX_VALUE);
BigInteger b = a.pow(100);
System.out.println(b);
String [] arr1 = new String[10];
Object [] test = arr1;
System.out.println(arr1.getClass());
关键字 assert
// 判断结果 true为继续运行
assert true;
// 判断结果 false为跳出程序 返回错误1
assert false;
// 举例
int a = 10;
assert a>10 : "a是大于10的"






int[] arr1 = new int[]{1, 23, 1};
System.out.println(Arrays.toString(arr1));
int [] [] array = new int[][] {{1,2,3},{3,5,9,7}};
System.out.println(Arrays.deepToString(array));
int [] a = new int[] {1,2,34,5};
int [] b = new int[] {1,2,34,5};
System.out.println("是否是用一个数组"+Arrays.equals(a,b));
// 三维数组
int[][][] a11 = new int[][][]{
{{1, 2, 34, 5}, {1, 2, 34, 5}},
{{1, 2, 34, 5}, {1, 2, 34, 5}}
};
int[][][] b11 = new int[][][]{
{{1, 2, 34, 5}, {1, 2, 34, 5}},
{{1, 2, 34, 5}, {1, 2, 34, 5}}
};
System.out.println(Arrays.deepEquals(a11,b11));
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return 0;
}
});
解释
这里new Comparator
比较其两个参数的顺序。当第一个参数小于、等于或大于第二个参数时,返回负整数、零或正整数。在前面的描述中,符号sgn(expression)表示数学符号函数,它被定义为根据表达式的值是负、零还是正返回-1、0或1中的一个。实现者必须确保所有x和y的sgn(compare(x,y))-sgn(compare,x))实现者还必须确保关系是可传递的:((compare(x,y)>0)&&(compare)y,z)>0)表示比较(x,z)>0。最后,实现者必须确保compare(x,y)0表示所有z的sgn(compare,z)==sgn(比较(y,z。一般来说,任何违反这一条件的比较器都应明确指出这一事实。推荐的语言是“注意:此比较器强制执行与等于不一致的排序。”参数:o1–要比较的第一个对象。o2–要比较的第二个对象。返回:负整数、零或正整数,因为第一个参数小于、等于或大于第二个参数。抛出:NullPointerException–如果某个参数为空,并且此比较器不允许空参数ClassCastException–如果参数的类型阻止此比较器对其进行比较。
总结: 返回大于零则大于 小于零则小于 等于零则等于
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2-o1;
// 返回值 大于0表示前面大 小于0表示前面小 等于0表示相等
// 可以写 前面减去后面 表示从小到大
// 或者 替换前后关系
// 则表示为 后面减去前面 表示从大到小
}
});
````
桥接方法没看懂, 此处编译后生成重写的桥接方法来调用 自己编写的方法
// 此处不能指定new出来的数组泛型的实际类型
Test<String>[] arr = new Test[10];
@FunctionalInterface
public interface Supplier<T> {
T get();
}
- 问题记录:
FileInputStream文件读取流, 再使用强制类型转换时输出会造成乱码
```
public class Main {
public static void main(String[] args) {
// 绝对路径 完整的路径
// FileInputStream inputStream = new FileInputStream("E:\\learning\\java2022\\javase_bili\\src\\main\\java\\new2\\se108相对路径和绝对路径\\new1.txt");
//// 相对路径
// FileInputStream inputStream1 = new FileInputStream("src/main/java/new2/se108相对路径和绝对路径/new1.txt");
// 项目 根目录
// FileInputStream inputStream3 = new FileInputStream("new1.txt");
// utf8中文字符 占三个字节
try (FileInputStream inputStream3 = new FileInputStream("new1.txt")) {
System.out.println(inputStream3);
// 字节流读取
int i = inputStream3.read();
System.out.println((char) i);
int j = inputStream3.read();
System.out.println((char) j);
int k = inputStream3.read();
System.out.println(k);
} catch (IOException e) {
// throw new RuntimeException(e);
e.printStackTrace();
}
}
}
```
原始问题Letd(n)bedefinedasthesumofproperdivisorsofn(numberslessthannwhichdivideevenlyinton).Ifd(a)=bandd(b)=a,whereab,thenaandbareanamicablepairandeachofaandbarecalledamicablenumbers.Forexample,theproperdivisorsof220are1,2,4,5,10,11,20,22,44,55and110;therefored(220)=284.Theproperdivisorsof284are1,2,
3月26日,映宇宙(HK:03700,即“映客”)发布截至2022年12月31日的2022年度业绩财务报告。财报显示,映宇宙2022年的总营收为63.19亿元,较2021年同期的91.76亿元下降31.1%。2022年,映宇宙的经营亏损为4698.7万元,2021年同期则为净利润4.57亿元;期内亏损(净亏损)为1.68亿元,2021年同期的净利润为4.33亿元;非国际财务报告准则经调整净利润为3.88亿元,2021年同期为4.82亿元,同比下降19.6%。 映宇宙在财报中表示,收入减少主要是由于行业竞争加剧,该集团对旗下产品采取更为谨慎的运营策略以应对市场变化。不过,映宇宙的毛利率则有所提升
2022年10月21日星期五【数据指标】加密货币总市值:$0.95万亿BTC市值占比:38.51%恐慌贪婪指数:23极度恐慌 【今日快讯】1、【政讯】1.1.1、美联储布拉德:市场预期美联储11月会加息75个基点1.1.2、美联储哈克:将维持加息一段时间1.2、美国10年期国债收益率触及4.197%,为2008年6月以来最高1.3、法国数字转型部长:政府将专注于DeFi和Web31.4、巴西ATM机将于11月3日起支持USDT1.5、美众议院副议长将于11月初加入a16zCrypto担任政府事务主管1.6、香港数字资产托管机构FirstDigitalTrust首席执行官:香港仍是安全
如何用IDEA2022创建并初始化一个SpringBoot项目?目录如何用IDEA2022创建并初始化一个SpringBoot项目?0. 环境说明1. 创建SpringBoot项目 2.编写初始化代码0. 环境说明IDEA2022.3.1JDK1.8SpringBoot1. 创建SpringBoot项目 打开IDEA,选择NewProject创建项目。 填写项目名称、项目构建方式、jdk版本,按需要修改项目文件路径等信息。 选择springboot版本以及需要的包,此处只选择了springweb。 此处需特别注意,若你使用的是jdk1
为什么重新打开嵌套模块会根据使用的语法给出不同的结果?例如,这很好用:moduleAmoduleEendendmoduleAmoduleEdefE.eendendend但是这个:moduleAmoduleEendendmoduleA::EdefE.eendend给出错误:reopen.rb:6:in`':uninitializedconstantA::E::E(NameError)fromreopen.rb:5:in`'(在有人指出这一点之前,解决方法是在定义E.e时使用self而不是模块名称,但这不是本文的重点。) 最佳答案 mo
文章目录问题B:芝华士威士忌和他的小猫咪们代码&注释问题C:愿我的弹雨能熄灭你们的痛苦代码注释问题D:猜糖果游戏代码注释问题E:有趣的次方代码注释问题F:这是一个简单题代码&注释问题G:打印矩阵代码注释问题H:scz的简单考验代码注释问题I:完美区间代码&注释问题J:是狂热的小迷妹一枚吖~代码&注释2022年10月23日周赛ZZULIOJ问题B:芝华士威士忌和他的小猫咪们时间限制:1Sec内存限制:128MB题目描述芝华士威士忌很喜欢带着他的猫咪们一块跑着玩。但是小猫咪们很懒,只有在离他y米以内才愿意和他一块跑。这天他在坐标为x的位置,他想和他的猫咪们一块跑着玩。有n个小猫咪,第i个小猫咪在坐
代码请进行一定修改后使用,本代码保证100%通过率,本题目提供了java、python、c++三种代码。复盘思路在文章的最后题目描述祖国西北部有一片大片荒地,其中零星的分布着一些湖泊,保护区,矿区;整体上常年光照良好,但是也有一些地区光照不太好。某电力公司希望在这里建设多个光伏电站,生产清洁能源对每平方公里的土地进行了发电评估,其中不能建设的区域发电量为0kw,可以发电的区域根据光照,地形等给出了每平方公里年发电量x千瓦。我们希望能够找到其中集中的矩形区域建设电站,能够获得良好的收益。输入描述第一行输入为调研的地区长,宽,以及准备建设的电站【长宽相等,为正方形】的边长最低要求的发电量之后每行为
https://cloud.189.cn/t/BJbYreYbmUj2(访问码:djz6)(网盘2022-4-1更新)一、刷入armbian。1.1使用AmlBurnTool软件烧录首选底包至固件。烧录完成后断开玩客云电源备用。(靠近hdmi的那个口子。)1.2使用WIn32diskimager软件将emmc固件写入U盘。1.3写入成功后,先将U盘插入玩客云靠近网线接口端的USB口,再接入电源。玩客云通电后指示灯会先亮绿灯,再亮蓝灯,红蓝闪烁,最后蓝灯常亮。等到确定蓝灯常亮后,再拔掉U盘、电源。(最好蓝灯常亮后,启动一次玩客云,看看ssh是否正常。)1.4使用WIn32diskimager写入
Ai-Bot基于流行的Node.js和JavaScript语言的一款新自动化框架,支持Windows和Android自动化。1、Windowsxpath元素定位算法支持支持Windows应用、.NET、WPF、Qt、Java和Electron客户端程序和ie、edgechrome浏览器2、Android支持原生APP和H5界面,元素定位速度是appium十倍,无线远程自动化操作多台安卓设备3、基于opencv图色算法,支持找图和多点找色,1080*2340全分辨率找图50MS以内4、内置免费OCR人工智能技术,无限制获取图片文字和找字功能。5、框架协议开源,除官方node.jsSDK外,用户可
问题描述小蓝负责一个公司的考勤系统,他每天都需要根据员工刷卡的情况来确定每个员工是否到岗。当员工刷卡时,会在后台留下一条记录,包括刷卡的时间和员工编号,只要在一天中员工刷过一次卡,就认为他到岗了。现在小蓝导出了一天中所有员工的刷卡记录,请将所有到岗员工的员工编号列出。输入格式输入的第一行包含一个正整数n,表示一天中所有员工的刷卡记录的条数。接下来n行,每行包含一条刷卡记录,每条刷卡记录的格式为:HH:MM:SSID其中HH:MM:SS表示刷卡时间,HH为一个0到23之间的两位十进制整数(可能含前导0)表示时,MM为一个0到59之间的两位十进制整数(可能含前导0)表示分,SS为一个0到59之间的