数组如何初始化

String[] words = new String[]{"1", "2"};

列表如何由单个对象初始化

Arrays.asList(obj);

列表pop方法

python列表的pop函数是弹出最后一个元素,java linkedlist的pop则是弹出第一个,要用removelast才好

字符串列表如何排序

tagList.sort(String::compareTo);

正则表达式

java用于文本处理的正则表达式

判断是否存在特殊符号

String reg = "[\\,\\,\\。\\:\\:\\?\\?\\!\\!]";
Pattern pattern = Pattern.compile(reg);
if (pattern.matcher(text).find()) {...
}

提取所有的数字(整数or浮点数)

\\d*\\.?判断的是浮点数的整数部分以及小数点,需要获取每一段文本及其起始位置

String reg = "\\d*\\.?\\d+";
Pattern pattern = Pattern.compile(reg);
Matcher m = pattern.matcher(text)
while (m.find()) {String subText = m.group();int start = m.start();int end = m.end();
}

java和python的set在处理对象方面的异同

  • 首先相同的一点是,它们都没办法将值完全相同的对象看做同一个,因为它们在内存中的地址不同,有两种解决方案,要么是自己重写equals方法和hashmap方法(在idea里面直接右键generate自动生成),要么是将其转换为string类型
  • 另外,java可以在set中加入列表,但python不行

java测试

import java.util.*;
class Dog {  String name;String color;public Dog(String n, String c) {  name = n;color = c;} public String toString() {return name+color;}
}public class Main {public static void main(String[] args) {Dog d1 = new Dog("xiaobai", "white");Dog d2 = new Dog("xiaobai", "white");//对象集合Set s = new HashSet();s.add(d1);System.out.println(s.contains(d1));System.out.println(s.contains(d2));//字符串集合s.add(d1.toString());System.out.println(s.contains(d1.toString()));System.out.println(s.contains(d2.toString()));//列表集合List <Dog> list1 = new ArrayList<>();List <Dog> list2 = new ArrayList<>();list1.add(d1);list2.add(d2);s.add(list1);System.out.println(s.contains(list1));System.out.println(s.contains(list2));}
}

python测试

class Dog:def __init__(self, name, color):self.name = nameself.color = colordef to_string(self):return self.name+self.color
d1 = Dog("xiaobai", "white")
d2 = Dog("xiaobai", "white")
s = set()  s.add(d1)
print(d1 in s, d2 in s)
s.add(d1.to_string())
print(d1.to_string() in s, d2.to_string() in s)
s.add([d1])
print([d1] in s, [d2] in s)

java如何从网页获取数据

String stringData = HttpUtil.get(url);
JSONObject jsonData = JsonUtil.fromJson(stringData);
for (String key: jsonData.keySet()) {...
}

java单例模式与getInstance()方法

java中的单例模式指的是一个类仅有一个实例,并且需要提供一个可以全局访问的接口。此时,原来的new方法就不再使用,因为它每次都要创建一个新的对象,并且只能在作用域内访问,这时就要定义一个getInstance()方法,简单的例子如下。

  • 线程不安全
public class Test {//创建私有静态实例,这样就可以全局访问//初始化为null,以确保只创建一次private static Test instance = null;//创建函数设置为private类型,确保无法在外部用newprivate Test(){}//静态方法,通过判断null确保只new一次public static Test getInstance(){if (null==instance) {instance = new Test();}return instance;}
}
  • 线程安全(类加载时就实例化)
public class Test {//创建私有静态实例,这样就可以全局访问private static Test instance = new Test();//创建函数设置为private类型,确保无法在外部用newprivate Test(){}//静态方法,通过判断null确保只new一次public static Test getInstance(){return instance;}
}

java与python的可变形参

python中可变形参有两种形式,*paras将位置参数转换为元组,**paras将关键字参数转换为字典。

java通过在类型和参数名间加入...来把最后一个形参视为个数不确定的,编译器会在背地里把其转化为一个数组形参。

如何取对象列表中的对象属性组成的新列表

List<int> idList= Objects.stream().map(Object::getId).collect(Collectors.toList());

java中的强制类型转换

int y;
double x = (double) y;
//隐式类型转换,从低到高
double x = y;
double x = Double.valueOf(y);

python转写java踩坑记录相关推荐

  1. Java踩坑记录-00001 BeanCreationException

    异常描述 严重: StandardWrapper.Throwableorg.springframework.beans.factory.BeanCreationException: Error cre ...

  2. 在linux上运行python脚本(安装pytorch踩坑记录,pyinstaller使用方式,构建docker镜像)

    背景 脚本需要导入pytorch等库才能运行. 脚本在windows上运行成功,尝试放到linux上运行. linux服务器内存较小. 方法一:在linux上安装依赖 把脚本放到linux上,直接安装 ...

  3. python sphinx_Python Sphinx使用踩坑记录

    描述 使用 pip 安装sphinx后,按照教程建立了一个新的py文件,如下 # run.py def run(name): """ this is how we run ...

  4. python 数字索引失败踩坑记录

    原来半角和全角输入下的数字是不一样的!!!难怪我一直索引失败 找不同: 1. 半角输入下的1 # 查看ASCII码 ord('1') 输出:49 2. 全角输入下的1 ord('1') 输出:6529 ...

  5. VS Code Python 代码智能提示(自动补全)编译环境设置踩坑记录

    VS Code Python 编译环境设置踩坑记录 本菜鸡非常喜欢VS code的简洁风格,而且跟原来再用的VS2017相比简直不要太快,前段时间电脑重装之后又要在windows系统上重新搭建整套环境 ...

  6. 使用Java读取 “Python写入redis” 的数据踩坑记录

    https://my.oschina.net/u/2338224/blog/3061507 使用Java读取 "Python写入redis" 的数据踩坑记录 https://seg ...

  7. sonar覆盖率怎么统计的_实战|Java 测试覆盖率 Jacoco插桩的不同形式总结和踩坑记录(上)...

    本文为霍格沃兹测试学院优秀学员关于 Jacoco 的小结和踩坑记录.测试开发进阶学习,文末加群. 一.概述 测试覆盖率是老生常谈的话题.因为我测试理论基础不是很好,这里就不提需求.覆盖率等内容,直奔主 ...

  8. mvn exec: java_实战|Java 测试覆盖率 Jacoco插桩的不同形式总结和踩坑记录(下)

    本文为霍格沃兹测试学院优秀学员关于 Jacoco 的小结和踩坑记录.测试开发进阶学习,文末加群. 六.注意事项汇总 修改 JAVA_OPTS 参数时,如果位置不对,可能造成代理无法启动. java - ...

  9. 微信退款 java工具类,微信支付中退款踩坑记录

    首先附上微信支付的开发者文档 其实这里所说的踩坑记录,无非就是微信在开发者文档上的写不太明确,也没有比较官方的demo,在此列出一个可行的demo,供大家下载使用. 主要问题就是在这几步解密上 微信的 ...

最新文章

  1. 你对象怎么找的?日本网友:国家用AI给分配的
  2. JS高级 - 面向对象5(继承,引用)
  3. Aspectj 实现Method条件运行
  4. Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试
  5. 算法题目——质量(POJ-1862)
  6. java 关联表做修改_java-图关联列表实现
  7. lazy-mock ,一个生成后端模拟数据的懒人工具
  8. jQuery学习之八---文档处理
  9. Leetcode每日一题:234.palindrome-linked-list(回文链表)
  10. Android——手机系统重装的备忘笔记
  11. gdal读写图像分块处理
  12. Dubbo zookeeper 初探【转】
  13. Mac OS 系统工具使用
  14. 机器学习 —— 神经网络(matlab)
  15. 格雷希尔Gripseal燃油管快速接头如何做密封性测试
  16. 基于微信的买菜小程序 毕业设计毕业论文 开题报告和效果图(基于微信小程序毕业设计题目选题课题)
  17. C# winform 界面美化技巧(扁平化设计)
  18. unity material以及各种贴图介绍
  19. PandoraBox潘多拉多线多播
  20. Wi-Fi当前的趋势及对IT和物联网的影响

热门文章

  1. 金泰克/tigo S300 240G SM225K H27QFG8PEM5R 完整开盘教程
  2. 基于webpack4搭建Vue服务端渲染(SSR)
  3. 学计算机毁一生,为什么说学医毁三代学法毁一生
  4. 判断Iphone,Ipad当前网络状态
  5. 程序员如何动手打造属于自己的智能…
  6. 自由传奇|为你的队伍加油!
  7. ctex中dvi格式_LaTex使用过程中的各种类型文件说明
  8. 数据库实验一:数据库与数据表定义(1)—— 数据库相关操作
  9. Excel -- 排序与排名
  10. AR红包Android端实现原理