java——java及idea小问题汇总(2020.4.5)

1.IDEA项目结构出现 0% methods,0% lines covered
解决上述问题,只需要使用快捷键 Ctrl + Alt + F6,在弹出窗口中取消项目前面的√, 点击show selected
2.手动迁移项目文件时,不能直接copy原文件到新项目,应该新建相应文件,然后复制内容到新文件中,估计原因是涉及到连接服务器,所以需要在springboot容器中注册,而直接复制的文件不会被注册
3.无法打开idea官网
原因:能是是以前免费用idea的注册码时修改了hosts文件
解决方案:
(1),修改hosts文件,进入hosts文件:
首先进入Win或mac系统的hosts文件所在位置,我们直接输入C:\Windows\System32\Drivers\etc后
回车就可以打开了,右键hosts文件,选择属性
(2)注释0.0.0.0 account.jebrains.com
4.通过字符串初始化JSONObject,其中str中的“记得要用转义字符"代替
JSONObject  jsonObject=JSONObject.fromObject(str);
5.删除JSONObject中指定键的键值对
JSONObject jsonObject2 = jsonObject.discard("name1");
注意原jsonObject中的指定键值对也被删除了
6.创建JSONArray,并向其中添加数据
JSONArray jsonStrs = new JSONArray();
jsonStrs.add(0, "cat");
jsonStrs.add(1, "dog");
7.java split函数,注意遇到* ^ : | . 前面要加\转义
String address="上海|上海市|闵行区|吴中路"; 
String[] splitAddress=address.split("\\|"); //如果以竖线为分隔符,
//则split的时候需要加上两个斜杠【\\】进行转义
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);
8.如果要修改String的内容建议用StringBuilder

参考:https://blog.csdn.net/u011702479/article/details/82262823

9.StringBuilder类转换为String类
	StringBuilder sb = new StringBuilder();
    sb.append("abc").append("efg");
    String s = sb.toString();
//String类转换为StringBuilder类
	String s = "hello";
    StringBuilder sb = new StringBuilder(s);
10.java快速打印int数组中元素值
    System.out.println(Arrays.toString(intArray));
11.java int转String:s=String.valueOf(i);
	String转int: int i = Integer.parseInt([String]);
参考博客:https://blog.csdn.net/u012050154/article/details/51320638
12.JSON字符串与JSONObject对象互转(java)
//把JSON字符串转换为JSONObject对象
JSONObject jsonobject = JSONObject.fromObject(jsonStr);
把String字符串转换为JSONArray对象
JSONArray tempjr=JSONArray.fromObject(jsonArrayStr);
13.对jsonObject对象进行操作赋值时,注意浅拷贝与深拷贝问题
浅拷贝如:JSONObject jb = this.jsonObject;
对于一个引用类型,如果直接将它赋值给另一个对象,
只是将引用地址赋值给新对象,修改一个对象另一个也会被更改。 

当需要复制后的对象独立于原对象,就要用深拷贝。
15.java用int型的ArrayList初始化hashset,
HashSet<Integer> hs=new HashSet<Integer>(){{addAll(list);}};
16.java对List 实现自定义排序,比如先对字符串长度进行排序,再按字典序排序
方法:使用Collections.sort扩展接口Comparator
代码: 
	Collections.sort(stringArrayList, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                int flag = o1.length() - o2.length();
                if(flag == 0){
                    return o1.compareTo(o2);
                }else{
                    return flag;
                }
            }
        });
发布了82 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_35077107/article/details/105332805