小编Her*_*ans的帖子

字符串数组初始化为构造函数参数

在Java中,以下列方式初始化String数组是完全合法的:

String[] s = {"FOO", "BAR"};
Run Code Online (Sandbox Code Playgroud)

但是,在尝试实例化一个以String数组作为参数的类时,不允许使用以下代码:

Test t = new Test({"test"});
Run Code Online (Sandbox Code Playgroud)

但这又有效:

Test t = new Test(new String[] {"test"});
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么会这样吗?

java arrays string constructor

29
推荐指数
2
解决办法
6万
查看次数

TreeMap如何排序

怎么TreeMap样?比方说你有以下地图:

TreeMap<String, Integer> treemap = new TreeMap<>();
treemap.put("lol", 1);
treemap.put("Marc", 2);
treemap.put("Jesper", 3);

Iterator ittwo = treemap.entrySet().iterator();
    while (ittwo.hasNext()) {
    Map.Entry pairs = (Map.Entry)ittwo.next();
    System.out.println(pairs.getKey() + " = " + pairs.getValue());
    ittwo.remove();
}
Run Code Online (Sandbox Code Playgroud)

这个输出是:

Jesper = 3
Marc = 2
lol = 1
Run Code Online (Sandbox Code Playgroud)

那么,如果它不按字母顺序排列它是什么呢?

java sorting treemap

15
推荐指数
2
解决办法
5万
查看次数

将异常放在自己的子包中?

在我正在为项目工作的当前包中,我有大约13种不同的自定义异常.将这些放在包含所有将使用这些异常的类的包下面的子包中是一个好主意吗?

例如:

com.company.project.core

包含一堆类,可以抛出一些自定义异常,然后放在其中

com.company.project.core.exception

我现在看到的唯一缺点是我使用异常对类进行了更多的导入.

java packages exception

3
推荐指数
1
解决办法
2401
查看次数

在for循环中使用switch语句

我有一个关于天气的问题,在for循环中使用switch语句是合法的.它在Eclipse下面编写的方式给了我一个错误,并且不允许我在for循环中的第二个语句中使用switch(n).我想做的是写...

这位老人,他打了一场比赛.
他在我的拇指上打得很狡猾.

使用for循环和switch语句是否有更好的方法来解决下面的问题?我想用不同的数字和不同的情况写出不同的段落.所以1拇指,2鞋,3膝......直到10.

import acm.program.*;

public class SingSong extends ConsoleProgram {

    public void run() {
        for (int n = 1; n <= 10; n++) {
            println("This old man, he played " + n);
            println("He played knick-knack on my" + switch(n));
            println("With a knick-knack, paddy-whack,");
            println("Give your dog a bone");
            println("This old man came rolling home");

            switch (n) {            
                case 1 : println("thumb"); break;
                case 2 : println("shoe"); break;
                case 3 : println("knee"); break;
                case 4 : println("door"); break;
                case …
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
4万
查看次数

为什么这个HashMap.get返回null?

我插入值到HashMap这样的

String group_name[]=group_names.split(",");
String group_ids[]=new_groups.split(",");
Hashtable<Integer,String> hm=new Hashtable<Integer,String>(10);
for(int i=0;i<group_ids.length;i++){
    if (group_ids[i]!=null && !group_ids.equals("")) {
        hm.put(Integer.parseInt(group_ids[i]), group_name[i]);
    }
Run Code Online (Sandbox Code Playgroud)

在下面的代码list2是ArrayList和它的键,HashMap我正在检索如下的值

for(String group_id1:list2) {
    int gid=Integer.parseInt(group_id1); 
    String group_name=hm.get(Integer.parseInt(group_id1));
Run Code Online (Sandbox Code Playgroud)

这里hm.get()方法返回null

java

0
推荐指数
1
解决办法
119
查看次数

标签 统计

java ×5

arrays ×1

constructor ×1

exception ×1

packages ×1

sorting ×1

string ×1

treemap ×1