下面是关于Java数组的10大方法,他们都是在stackoverflow上投票出来的。

1. 定义一个数组

不知道为什么这个是问的最多的,难道因为最常见所以最容易忘?

1
2
3
String[] aArray = new String[5];
String[] bArray = {"a","b","c", "d", "e"};
String[] cArray = new String[]{"a","b","c","d","e"};
阅读全文

java中数组有2中情况:基本类型(如:int,char等等)或者引用(或者叫指针)。

当使用”new” 创建一个对象的时候,内存是分配在堆上同时返回一个索引。当数组是对象的时候,对于它来说也是一样的。

阅读全文

这是非常基础的的java问题。很多相同的问题在stackoverflow都被问,同时有很多不正确或者未完成的回答。这个问题很简单,但是你不好好想想,你会感到疑惑,使用你最好好好想想。

1.代码片段很有趣同时也会让人疑惑

1
2
3
4
5
6
7
8
9
public static void main(String[] args) {
String x = new String("ab");
change(x);
System.out.println(x);
}
public static void change(String x) {
x = "cd";
}

这将会输出ab

阅读全文

该部分是为了hacker准备的,如果你想在各种环境上尝试Docker的话。在安装着版本之前最好先检查一下你系统的版本是否支持包安装。我们提供了许多版本的安装包,并且都保持了更新。

阅读全文

关于Docker

发布在 docker

在任何地方都可以开发、部署运行任何程序

Docker是一个为开发者和系统管理员开发、运输和运行程序的平台。Docker可以让你快速的组装程序的组件,并且消除了运行带来的额外影响。Docker可以使你的代码测试部署带生产环境更加快速。

Docker由一下组成:

  • Docker 引擎 - 轻量级,开源的虚拟化容器,连接了构建和组装程序的工作流。
  • Docker Hub - 一个 SaaS服务,用来分享和管理你的程序脚本。
阅读全文

以下是排名前10位的常见关于Java字符串的问题。

1.如何比较字符串?用”==” 还是equals()?

简单来说,如果”==”测试是相等的,那么使用 equals()也是相等的。如果你想知道这两个对象是不是相同,你应该使用equals()。

如果你知道string interning那会让你更好理解。

2.在安全敏感信息方面为什么 char[] 优于字符串?

字符串是不可变的,这意味着一旦被创建,他们将保持不变,直到垃圾回收。但是数组话,你可以明确地改变它的元素。以这种方式,安全敏感信息(如密码)将不存在于系统中的任何地方。

阅读全文

该文总结了排名前10位的错误,这些都是Java开发人员经常犯的。

1.把数组转成ArrayList

把数组转成ArrayList,开发者通常这样做:

1
2
3
4
String[] arr = new String[]{"a", "b", "c"};
List<String> list = Arrays.asList(arr);
System.out.println(list);
// [a, b, c]
阅读全文

迭代器经常会出现问题,因为开发人员往往不知道它是如何工作的。下面的代码来源是ArrayList的源码:

最常见的问题是抛出java.util.ConcurrentModificationException异常。这异常实际通常是由remove方法抛出。当remove()调用是应该在 next()调用之后调用。如果remove()在next()调用之前调用,arraylist 的容量改变了,modCount != expectedModCount条件不满足,ConcurrentModificationException 异常就产生了。

阅读全文

Javy Liu

author.bio


author.job


beijing