java新手抖机灵(java新手技巧)

1.交换两个整数的值

好处是不用定义临时变量,显得代码简洁,提高运行效率

其实也可以用+-*/进行这种运算

比如可以这样:

a = a + b;

b = a - b;

a = a - b;

int a = 1, b = 2;
a = a ^ b;
b = a ^ b;
a = a ^ b;
System.out.println(a);
System.out.println(b);

2.快速查找整形数组中的偶数

其实这个和第四项有些重复部分,但是总觉得合在一起不合适,所以好吧,还是单独写了出来,

第二种方法请参照第四条,更易于理解

int[] a     = {-1, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int count = 0;
for (int i : a) {
count += i&1;
}
System.out.println(count);

3.java自动关闭流

这个可以说是我学python回来之后遇到的最好的语法糖了,对于习惯性忘记关闭流的我来说,真的是很舒服

try (PrintWriter pw = new PrintWriter("d:/temp.txt");
FileReader fr = new FileReader("d:temp.txt");
BufferedReader br = new BufferedReader(fr)) {
pw.write("你好我是小言");
pw.flush();
System.out.println(br.readLine());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

4.快速判断一个数是否为偶数

前面说过了,其实这个按位符号用途还蛮多的,新手了解的话很费劲,在学校老师也不会怎么教实际应用,直到我看到了这个,才对按位运算起了兴趣

//方法1,速度较快
for (int i = -10; i < 10; i++) {
System.out.println((i&1)==0);
}
//方法2,便于理解
for (int i = -10; i < 10; i++) {
System.out.println(i*i%2==0);
}

java新手抖机灵(java新手技巧)的更多相关文章

  1. Java学习路线图,专为新手定制的Java学习计划建议

    怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西:    首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA).J ...

  2. 转:Java学习路线图,专为新手定制的Java学习计划建议

    转自:http://blog.csdn.net/jinxfei/article/details/5545874 怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业 ...

  3. 新手如何学习java(java学习建议路线图)

    怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西:     首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA). ...

  4. 新手如何学习Java——Java学习路线图

    推荐初学者阅读:新手如何学习Java——Java学习路线图

  5. 新手详解JAVA+数据库+JSP完成简单页面

    本篇以数据库添加为例(本例中数据库名为“xinxi”表单名字为“stud”) 准备---实体层: package entity; public class Student { private Stri ...

  6. java猜数游戏(新手记录每天的作业)

    //导入包 import java.util.Scanner;import java.util.Random; //定义一个类 public class Zcs{ //公共静态的主方法 public ...

  7. 优化Java堆大小的5个技巧

    本文作者Pierre是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE.中间件和JVM技术.根据他多年的工作实践经验,他发现许多性能问题都是由Java堆容量不足和调优引起的.下面他 ...

  8. java系列:《java核心技术 卷1》学习笔记,chapter 11 调试技巧

    11. 6 调试技巧 1)一个不太为人所知却非常有效的技巧是在每个类中放一个main方法,这样就可以对每个类进行单元测试.这个方法可以保留,因为在java虚拟机只调用启动类的main方法. 2)   ...

  9. JAVA学习之Ecplise IDE 使用技巧(2)第二章:键盘小快手,代码辅助

    上一篇:JAVA学习之Ecplise IDE 使用技巧(1)第一章:我的地盘我做主,工作空间 第二章:键盘小快手,代码辅助 内容包括: 第一:显示行号 如何设置行号:Ecplice菜单Windows& ...

随机推荐

  1. leetcode python 030 Substring with Concatenation of All Words

    ## 您将获得一个字符串s,以及一个长度相同单词的列表.## 找到s中substring(s)的所有起始索引,它们只包含所有单词,## eg:s: "barfoothefoobarman&q ...

  2. 2.5 定义FTP工具的各种方法

    用class定义ftp工具的各种方法 import os,sys from ftplib import FTP from mimetypes import guess_type,add_type fr ...

  3. SQL-43 将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01。

    题目描述 将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01.CREATE TABLE IF NOT EXISTS titles_test ...

  4. go web framework gin middleware 设计原理

    场景:一个middleware可以具体为一个函数,而由前面的gin 路由分析可得,每一个路径都对有一个HandlersChain 与其对应. 那么实际上增加一个middleware的过程,就是将每一个 ...

  5. python自学第9天,装饰器

    装饰器:本质是函数(装饰其它函数) 就是为其它函数添加附加功能 原则:1.不能修改被装饰函数的源代码 2.不能修改被装饰的函数的调用方式 实现装饰器知识储备: 1.函数即变量 2.高阶函数:a.把一个 ...

  6. Sql Server索引重建

    公司线上数据有几千万数据,有时候索引碎片会导致索引达不到我们的预期查询效率,这个时候将索引重建将会提升一定效率,不过重建的时候一定得晚上用户少的时候,索引重建需要一定时间. 直接贴自动重建索引脚本吧 ...

  7. python day27--常用模块 time,random,os,序列化

    一.time模块 %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-31) %H 24小时制小时数(0-23) %I ...

  8. 【linux基础】cuDNN版本查询

    参考 1. 查看cudnn版本; 完

  9. 【开发遇到的问题】Spring Mvc使用Jackson进行json转对象时,遇到的字符串转日期的异常处理(JSON parse error: Can not deserialize value of type java.util.Date from String[)

    1.问题排查 - 项目配置 springboot 2.1 maven配置jackson - 出现的场景: 服务端通过springmvc写了一个对外的接口,查询数据中的表,表中有一个字段属性是时间戳,返 ...

  10. python------面向对象进阶反射详解(重点)

    一.反射 通过字符串映射或者修改程序运行时的状态,属性,或者方法. 1.getattr(object,name,default=None) 2.hasattr(object,name) 3.setat ...