• 4、条件运算符(三元运算符):

String type = score<60?"不及格":"及格";

int i = (string=="hello"? 10:-1);

int j = (x>0 ? 1:(x>10 ? 2:-1));//多重嵌套


  • 5、 静态导入(static import)是在JDK1.5新增加的功能,其作用是用于导入制定类的静态属性,这样就可以直接使用静态属性;

import static java.lang.Math.PI;    //导入Math类的PI属性


  • 6、equals()方法提供定义“对象内容相等”的逻辑


  • 7、当类中定义了有参构造方法,无参构造函数就不再存在,想要使用必须在类中显式声明;

  • 8、逻辑运算符:

运算符 符号 说明
逻辑与 &(与) 两个操作数为true,结果才为true,否则是false
逻辑或 |(或) 两个操作数一个是true,结果就是true
短路与 &&(与) 只要有一个为false,则直接返回false
短路或 ||(或) 只要有一个为true,则直接返回true
逻辑非 !(非) 取反:!false为true,!true为false
逻辑异或 ^(异或) 相同则为false,不同为true
  • 短路与和短路或采用短路的方式,从左到右计算,如果只通过运算符左边的操作数就能确定该逻辑表达式的值,则不会继续计算运算符右边的操作数,提高效率。

  • 9、递归结构

    • 递归是一种常见的解决问题的方法,即把问题逐渐简单化。递归的基本思想就是“自己调用自己”,一个使用递归技术的方法将会直接或者间接的调用自己。
    • 利用递归可以用简单的程序来解决一些复杂的问题。比如:斐波那契数列的计算、汉诺塔、快排等问题。
    • 递归结构包括两个部分:
      • (1)定义递归头。解答:什么时候不调用自身方法。如果没有头,将陷入死循环,也就是递归的结束条件
      • (2)递归体。解答:什么时候需要调用自身方法。
public class Test22{
public static void main(String[] args) {
long d1 = System.currentTimeMillis();
System.out.printf("%d阶乘的结果:%s%n",10,factorial(10));
long d2 = System.currentTimeMillis();
System.out.printf("递归费时:%s%n",d2-d1); //耗时:32ms
}
/** 求阶乘的方法*/
static long factorial(int n) {
if(n == 1) {//递归头
return 1;
}else{//递归体
return n*factorial(n - 1); //n! = n*(n - 1)!
}
}
}
    • 递归的缺陷:
      • 简单的程序是递归的有点之一,但是递归调用会占用大量的系统堆栈,内存耗用多,在递归调用层次多时,速度比循环慢得多,所以在使用递归时要慎重。
    • 注意事项
      • 任何能用递归解决的问题也能使用迭代(循环)解决。当递归方法可以增加自然地反映问题,并且易于理解和调试,并且不强调效率问题时,可以采用递归;
      • 在要求高性能的情况下尽量避免使用递归,递归调用既花时间又耗内存。

java知识点积累(二)的更多相关文章

  1. java知识点积累(一)

    知识点积累 1.关于final的重要知识点: final关键字可以用于成员变量.本地变量.方法以及类: final修饰的成员变量必须在声明时被初始化,或者在构造器中初始化,否则就会报编译错误: 不能够 ...

  2. Java 知识点(二)

    接<Java 知识点(一)> java的输入输出与 c 语言不同,下面介绍Java的格式: 16.因为Java的输入类Scanner,定义在java.util包中,所以Java需要输入时要 ...

  3. Maven知识点积累二

    ①maven常用命令: mvn clean:清除target下编译生成的class文件 mvn compile:编译 mvn package:打包放到target下 mvn install:打包并放到 ...

  4. Java 面试知识点解析(二)——高并发编程篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  5. java基础知识点补充---二维数组

    #java基础知识点补充---二维数组 首先定义一个二维数组 int[][] ns={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; 实现遍 ...

  6. 学Android开发,入门语言java知识点

    学Android开发,入门语言java知识点 Android是一种以Linux为基础的开源码操作系统,主要使用于便携设备,而linux是用c语言和少量汇编语言写成的,如果你想研究Android,就去学 ...

  7. java‘小秘密’系列(二)---Integer

    java'小秘密'系列(二)---Integer 前言:本系列的主题是平时容易疏忽的知识点,只有基础扎实,在编码的时候才能更注重规范和性能,在出现bug的时候,才能处理更加从容. 目录 java'小秘 ...

  8. javascript知识点积累

    8年javascript知识点积累   08年毕业就开始接触javascript,当时是做asp.net发现很多功能用asp.net控件解决不了,比如checkbox单选,全选问题,自动计算总价问题, ...

  9. Java知识点脑图

    做服务器开发有十几年了,其中大部分用到的都是Java服务器开发,从JDK1.4到现在的JDK1.8,从基本的Java Application到 J2EE(JBOSS,Glassfish),OSGI,到 ...

随机推荐

  1. Linux课程---10、权限管理(权限有哪几种)

    Linux课程---10.权限管理(权限有哪几种) 一.总结 一句话总结: r 读 w 写 x 执行 1.drwxr-x---  2 root root  4096 Jan 20 19:39 mnt ...

  2. 【python】关于函数递归使用 return 后,收到数据为 None。

    在写一个辗转相除求最小公因数的程序的时候,突然发现自己不管怎么写(除了两数恰巧可以整除),return 返回的值恒为 none. 代码为此: def gcd(a,b): if a%b==0: retu ...

  3. ES doc_values的来源,field data——就是doc->terms的正向索引啊,不过它是在查询阶段通过读取倒排索引loading segments放在内存而得到的?

    Support in the Wild: My Biggest Elasticsearch Problem at Scale Java Heap Pressure Elasticsearch has ...

  4. vue2.0项目实战使用axios发送请求

    在Vue1.0的时候有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource. 关于为什么放弃推荐? -> 尤 ...

  5. Java_util_02_Java判断字符串是中文还是英文

    做微信开发,使用百度翻译API时,需要指定译文的语种.这就需要我们判断待翻译内容是中文还是英文,若是中文,则翻译成英文,若是英文则翻译成中文. 方法一:字符与字节的长度 依据:一个中文占两个字节,一个 ...

  6. PHP中怎样让数组以字母为键值来递增

    //小写字母 $key = 97; $arr = array(); for($i=1;$i<=26;$i++){ $arr[chr($key)] = $i; $key++; } print_r( ...

  7. ATL实现COM组件

    参考文献:https://blog.csdn.net/Marcus2006/article/details/41978799 ATL实现COM组件比较简单,关键是在程序中如何调用该组件. vs2010 ...

  8. ffmpeg代码实现自定义encoder

    1.概述 本文主要讲述如何用ffmpeg代码实现自己的encoder. 2.代码 /* *本程序主要实现一个自己的encoder并加入到encoder链中去,供api调用 *作者:缪国凯(MK) *8 ...

  9. 省选/NOI刷题Day2

    bzoj2616 放一个车的时候相当于剪掉棋盘的一行,于是就可以转移了,中间状态转移dp套dp,推一下即可 bzoj2878 环套树期望dp 手推一下递推式即可 bzoj3295 树状数组套权值线段树 ...

  10. BZOJ3033 太鼓达人

    3033: 太鼓达人 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 690  Solved: 497[Submit][Status][Discuss] ...