摘要:
Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域:◆寄存器:我们在程序中无法控制◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中◆堆:存放用new产生的数据◆静态域:存放在对象中用static定义的静态成员◆常量池:存放常量◆非RAM存储:硬盘等永久存储空间Java内存分配中的栈在函数中定义的一些基本类型的变量数据和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时 阅读全文
摘要:
1、计算两个日期差多少天的方法,代码如下 1 /** 2 * 这个方法可以比较两个日期的相差天数。先输入小的日期 3 */ 4 private static void DateCha() { 5 Scanner datein = new Scanner(System.in); 6 Scanner input1 = new Scanner(datein.nextLine()).useDelimiter("-"); 7 Scanner input2 = new Scanner(datein.nextLine()).useDelimiter("-"); 8 C 阅读全文
摘要:
数据结构中二叉树的代码如下: 1 package tech2; 2 3 public class BTNode<E> { 4 private E data; 5 private BTNode<E> left; 6 private BTNode<E> right; 7 8 public BTNode(E root) { 9 data = root; 10 } 11 12 /** 13 * BTNode<E> 的构造函数 14 * 15 * @param data 16 ... 阅读全文
摘要:
首先看一下三元运算符的格式 [条件语句] ? [表达式1] : [表达式2]其中如条件语句为真执行表达式1,否则执行表达式2.简单的例子就不举了,来点其它的。在JDK1.5以前的版本中,表达式1和表达式2都要求是相同的类型,比如都是String或者char之类的,在JDK1.5以后,有了自动拆箱和装箱的原因,两者只要其中一种或者两者都能被拆箱即可,比如表达式1为Integer,而表达式2为int类型的,比如如下1 int a = 1;2 Integer b = 2;3 boolean c = ture;4 int d = c ? b : a;还有个需要注意的是,如果表达式1和表达式2的类型不. 阅读全文
摘要:
不能使用for , while , switch , if , do..while , ? : ,就这些吧自己写了个很奇怪的java代码可以运行实现1 private static boolean pum(int num) {2 System.out.print(num + " ");3 boolean y=(num!=0) && pum(num-1);4 return true;5 }额,还有什么方法可以实现了,比如C和C++之类的? 阅读全文