Java基础

本文对比了Java与JavaScript,包括适用场景、编程范式、编译方式、变量类型等。还介绍了Java中跳出多重嵌套循环的方法、运算符区别、数据类型及包装类、字符串处理、数组与列表区别等,同时提及Java 1.8新特性及重写equals和hashcode的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java与JavaScript

  • 适用于:

    Java适用于网络互联网应用开发,JavaScript适用于Web页面

  • 基于对象和面向对象:

    Java:面向对象语言,不管什么都要设计对象。JavaScript:脚本语言,基于对象和事件驱动的语言,本身提供内部对象。

  • 解释和编译:

    对于Java,必须编译再执行 对于JavaScript是一种解释型语言,不需要编译,直接由浏览器解释执行。

  • 强类型变量和弱类型变量:

    Java采用强类型,所有变量在编译前必须声明,而JavaScript不用声明,在运行时推断其数据类型。

请你说明一下,在Java中如何跳出当前的多重嵌套循环?

  • 在循环外面加标号,然后break 标号
  • 抛出异常
  • break跳出整个循环

&和&&
& 按位与,逻辑与
&&短路与:验证用户登录时,首先得判断空,然后在.equals。不然会出现空指针
int 和 Integer
为了使基本数据类型成为对象,引入了对应包装类型,java1.5时采用了自动拆箱装箱。
Integer a = new Integer(3);
int c = 3;
a == c true
对象引用实例的缺省值为null,而原始数据类型和原类型有关
如何输出特殊编码字符
String str=“iso”
str=new String(str.getBytes(“ISO”),“GBK”);
String和StringBuffer的区别
他们可以存贮和操作字符串,String提供了数值不可变的字符串,StringBuffer提供修改,可使用其动态构造字符数据。
频繁修改字符串的情况考虑使用StingBuffer。
String变为StringBuffer:利用StringBuffer的构造方法或append()方法
StringBuffer变为String:调用toString()方法。
StringBuffer采用同步处理,属于线程安全操作;而StringBuilder采用异步处理,属于线程不安全操作。
Array和ArrayList区别
Array:包含基本类型和对象类型,大小固定
ArrayList:大小动态变化,提供很多方法。
请你解释什么事值传递和引用传递
值传递:基本型变量,传递的是变量的副本,改变副本不影响原变量。
引用传递:对象型变量,传递地址的副本,引用操作可能改变对象
Java中的基本数据类型有哪些,什么是自动拆装箱
byte short int long float double boolean char
在这里插入图片描述
自动装箱是把基本数据类型转变成对象包装类型
计算10进制小数的过程中要先转换为2进制进行计算,这个过程中出现了误差。

十进制的数再内存中是以补码的形式存放的
Lambda
接口必须只有一个方法,
优点:简洁,速度快,并行计算
缺点:不容易调试,需要预热
IM m = () -> System.out.println(“Hello World”);
Java1.8新特性
Lambda,接口里默认方法
==比较
对比两个对象基于内存引用。是否是同一个对象,如果是基本类型,则比较数值
Object
hashcode()是本地方法,返回对象的内存地址
String类的equals()方法就是覆写的Object类中的equals()方
法。
为什么重写equals还要重写hashcode
在HashMap中,如果要比较key相等,需要同时使用,要先求出key的hashcode,在进行equals。重载hashcode是为了对同一个key得到相同的hashcode,重载equals是为了表明当前对象和key索堡村的对象相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值