![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
Java常见问题
马丁•路德•王
此人不是很懒,但是不想写
展开
-
Java基础六 - Collection集合List、Set、Queue,Map
这个异常是为了保护迭代器的一致性,因为迭代器在遍历过程中维护着一个期望的集合状态,如果集合发生了修改,那么迭代器的状态就变得不一致了,因此抛出异常。1. 遍历map的时候不能remove或者replace,一个集合在迭代器遍历的过程中被修改(增加、删除元素),则会抛出。另外,toArray()方法就是一坨屎。原创 2023-08-03 16:59:03 · 1179 阅读 · 0 评论 -
java基础四-String/StringBuffer/StringBuilder区别
String 和 StringBuffer、StringBuilder 的区别在于 String 声明的是不可变的对象,每次操作都会生成新的 String 对象,然后将指针指向新的 String 对象,而 StringBuffer、StringBuilder 可以在原有对象的基础上进行操作,所以在经常改变字符串内容的情况下最好不要使用 String。而StringBuilder 是非线程安全的,它的方法没有进行同步,不适合在多线程环境中使用。原创 2023-08-02 10:47:35 · 206 阅读 · 0 评论 -
java基础三 equal和==的区别
== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用;而 equals 默认情况下是引用比较,只是很多类重新了 equals 方法,比如 String、Integer 等把它变成了值比较,所以一般情况下 equals 比较的是值是否相等。引用数据类型主要有:数组(类型)、类(类型)、接口(类型)、包装类型。原创 2023-08-02 10:19:23 · 116 阅读 · 0 评论 -
Java基础一(队列和堆栈)
例如,`LinkedList`提供了`addFirst()`和`addLast()`方法,而`ArrayDeque`提供了`addFirst()`、`addLast()`、`removeFirst()`、`removeLast()`等方法,用于模拟双端队列(deque)的行为。`Stack`类继承自`Vector`类,但由于`Vector`类在Java中已经过时,推荐使用`Deque`接口的实现类(例如`LinkedList`)来代替`Stack`类。- `E poll()`: 获取并移除队列头部的元素。原创 2023-08-01 17:51:38 · 157 阅读 · 0 评论 -
Java日常练习一(循环+Character)
这个方法运行的arraysInt结果为ASCII码,而非12312;思路一,先转为String,再使用String.ParsaInt方法。那么char转Integer的方法是什么呢?原创 2022-11-22 11:17:47 · 193 阅读 · 1 评论 -
java.net.URLEncoder.encode空格变+号,加号的解决办法
今天发现Double d = (Double) 66.6 * 100sout(d) = 6659按照下面的方法修改后就ok了:String str = 66.6;BigDecimal b = new BigDecimal(str);BigDecimal c = new BigDecimal(String.valueOf(100));Integer price = b.multiply(c).intValue();sout(price) --> 6660...原创 2022-01-06 17:41:31 · 4687 阅读 · 2 评论 -
Double类型乘法之后精度丢失
今天发现Double d = (Double) 66.6 * 100sout(d) = 6659按照下面的方法修改后就ok了:String str = 66.6;BigDecimal b = new BigDecimal(str);BigDecimal c = new BigDecimal(String.valueOf(100));Integer price = b.multiply(c).intValue();sout(price) --> 6660...原创 2022-01-06 17:34:31 · 999 阅读 · 0 评论 -
Java OOM 是什么以及常见原因
1)什么是OOM?OOM即out of memory, 翻译成中文就是“内存用完了”,来源于java.lang.OutOfMemoryError。看下关于的官方说明:Thrown when the Java Virtual Machine cannot allocate an object because it is out of memory, and no more memory could be made available by the garbage collector. 意思就是说,当JV.转载 2021-08-02 00:13:50 · 912 阅读 · 0 评论 -
Java中final 关键字的作用是什么?
1.修饰类:不能被继承2.修饰方法:不能被重写,可以被其他类继承3.修饰变量必须初始化,初始化之后值不能被修改原创 2021-07-02 23:27:54 · 92 阅读 · 0 评论