- 浏览: 184479 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (103)
- Java综合 (19)
- java模式 (1)
- java 包详解 (8)
- 需要阅读的书目 (1)
- Json (1)
- MySQL (2)
- zkoss (2)
- svn (1)
- JavaScript (1)
- html (1)
- 试题集锦 (6)
- 试题集锦_poj (1)
- Vim 操作 (2)
- Linux 操作 (5)
- NS2 学习 (2)
- 网络 (4)
- c/c++ (7)
- WNS - Wired Network Simulator (1)
- 网络信息体系结构 (16)
- MIPS (1)
- Java图形化编程 (2)
- 数据结构 (1)
- 数学 (3)
- 爬虫 (1)
- 搜索引擎 (1)
- NetFPGA (1)
- Directshow (1)
- 小软件 (2)
- FFMPEG (1)
- Windows Socket 网络编程 (5)
- Git (1)
- IntelliJ IDEA (0)
- Plone (1)
- Python (1)
最新评论
-
不要叫我杨过:
受教了,高手
Heritrix架构分析 -
springaop_springmvc:
apache lucene开源框架demo使用实例教程源代码下 ...
Lucene 3.0.2 使用入门 -
zxw961346704:
值得学习的算法
Java 计算器 -
medicine:
Thread.sleep(1000); 会使线程进入 TIM ...
Java.lang.Thread 和 Java.lang.ThreadGroup -
tangzlboy:
嗯,不错!收藏。
Java 入门
_1.java
_11.java
_12.java
_13.java
_14.java
_2.java
_22.java
_24.java
_25.java
_26.java
_3.java
_36.java
_5.java
_6.java
_7.java
_8.java
_9_10.java
package itepub.net._20100805; /** * 奇偶性 * @author yuahan * */ public class _1 { public static boolean isOdd1(int n){// wrong return n % 2 == 1; } public static boolean isOdd2(int n){// right return n % 2 != 0; } public static void main(String[] args) { System.out.println(isOdd1(-1)); System.out.println(isOdd2(-1)); } }
_11.java
package itepub.net._20100805; /** * 最后的笑声 * @author yuahan * */ public class _11 { public static void main(String[] args) { System.out.println("H" + "A");//HA System.out.println('H' + 'A');//137 /* * 当且仅当有字符串类型时,+是字符串连接,其他的任何操作都会被认为是加法操作 * */ } }
_12.java
package itepub.net._20100805; /** * char array * @author yuahan * */ public class _12 { public static void main(String[] args) { char[] array = {'1','2','3'}; int[] array2 = {1,2,3}; System.out.println("letters: " + array); System.out.println("letters: " + array.toString()); System.out.println("letters: " + String.valueOf(array));// just for the char array, not for other arrays. System.out.println("letters: " + array2); System.out.print("letters: "); System.out.println(array);//Prints an array of characters and then terminate the line. This method behaves as though it invokes print(char[]) and then println(). System.out.print("letters: "); System.out.println(array2); /* letters: [C@c17164 letters: [C@c17164 letters: 123 letters: [I@1fb8ee3 letters: 123 letters: [I@1fb8ee3 */ } }
_13.java
package itepub.net._20100805; /** * String * equals() 比较的是内容 * == 比较的是引用 * 需要注意的是java的String池。 * 而且当一个String是由"常量的String"形成的,(如String s4 = "Mon" + "day"; s4会引用内存池中的"Monday"(如果存在的话)) * 该String会引用内存中的String(如果存在的话). * @author yuahan * */ public class _13 { public static void main(String[] args) { String s1 = "Monday"; String s2 = "Monday"; System.out.println(s1 == s2); String s3 = new String("Monday"); System.out.println(s1 == s3); s3 = s3.intern();//当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(用 equals(Object) 方法确定),则返回池中的字符串。否则,将此 String 对象添加到池中,并返回此 String 对象的引用。 System.out.println(s1 == s3); String s4 = "Mon" + "day";//对于String的常量表达式,java 会判断在内存中生成了Mon 和 day 两个常量之后,合成s4时会检查是否已经存在 System.out.println(s1 == s4); String s5 = "Monday6"; String s6 = s1 + 6; System.out.println(s1 == "Monday"); System.out.println(s5 == ("Monday" + 6));//两个都是常量,故在编译时便能确定,导致引用相同 System.out.println(s5 == s6);//false System.out.println(s5 == (s1 + 6));//false System.out.println(s5 == ("Monday" + s1.length()));//后者是变量,只有在执行时才能确定,引用不同 System.out.println(s6 == ("Monday" + s1.length())); String animal1 = "animal1"; String animal2 = "animal" + "1".length(); System.out.println("equals? " + animal1 == animal2);// result is "false", not "equals? false". System.out.println("equals? " + (animal1 == animal2));// result is "equals? false". } }
_14.java
package itepub.net._20100805; /** * 转义符 * @author yuahan * */ public class _14 { public static void main(String[] args) { String str = "a\u0022.length()+\u0022b";//\u0022 是引号的Unicode转义符 System.out.println(str.length());//2 System.out.println(("a".length()+"b").length()); } }
_2.java
package itepub.net._20100805; /** * 找零时刻 * @author yuahan * */ public class _2 { public static void main(String[] args) { System.out.println(2.00 - 1.10);// 1.10不能被精确的表示成浮点型数值 System.out.println((200 - 110) / 100D); } }
_22.java
package itepub.net._20100805; /** * URL * @author yuahan * */ public class _22 { public static void main(String[] args) { System.out.println(""); http://www.google.com;// goto. it looks like: "http: //www.google.com" System.out.println(""); } }
_24.java
package itepub.net._20100805; /** * byte -128 -- 127 * 对于混合类型来说 要特别的小心 * @author yuahan * */ public class _24 { public static void main(String[] args) { for(byte i = Byte.MIN_VALUE;i<Byte.MAX_VALUE;i++){ if(i == 0x90){//默认为int类型,故为144。 没有符合条件的时候 System.out.println(i); } } //没有任何输出 for(byte i = Byte.MIN_VALUE;i<Byte.MAX_VALUE;i++){ if(i == (byte)0x90){//默认为int类型,故为144。 没有符合条件的时候 System.out.println(i); } } //-112 } }
_25.java
package itepub.net._20100805; /** * 增量操作 * @author yuahan * */ public class _25 { public static void main(String[] args) { int j = 0; for (int i = 0; i < 100; i++) { j = j++;//0 } System.out.println(j);//0 /* * 相当于 * int temp = j; * j= j + 1; * j = temp; */ int k = 0; for (int i = 0; i < 100; i++) { k = ++k;//100 } System.out.println(k);//100 } }
_26.java
package itepub.net._20100805; public class _26 { public static void main(String[] args) { int i = Integer.MAX_VALUE; int j = Integer.MAX_VALUE - 100; int count = 0; for(;j<i;j++){ count++; } System.out.println(count); } }
_3.java
package itepub.net._20100805; /** * 长整除 * @author yuahan * */ public class _3 { public static void main(String[] args) { final long MICROS_PER_DAY = 24 * 60 * 60 * 1000 * 1000; final long MILLIS_PER_DAY = 24 * 60 * 60 * 1000; System.out.println(MICROS_PER_DAY / MILLIS_PER_DAY);// result=5. 因为是溢出之后然后再转换成的long类型。实际上已经溢出. final long MICROS_PER_DAY_2 = 24L * 60 * 60 * 1000 * 1000; final long MILLIS_PER_DAY_2 = 24L * 60 * 60 * 1000; System.out.println(MICROS_PER_DAY_2 / MILLIS_PER_DAY_2);// result=1000. } }
_36.java
package itepub.net._20100805; public class _36 { public static boolean decision(){ try{ return true; } catch(Exception e){ } finally{ return false; } } public static void main(String[] args) { System.out.println(decision()); } }
_5.java
package itepub.net._20100805; /** * 16进制问题 * @author yuahan * */ public class _5 { public static void main(String[] args) { System.out.println(Long.toHexString(0x100000000L + 0xcafebabe)); //cafebabe /* 0xffffffffcafebabe +0x0000000100000000 ------------------- 0x00000000cafebabe */ System.out.println(Long.toHexString(0x100000000L + 0xcafebabeL)); //1cafebabe /* 0x00000000cafebabe +0x0000000100000000 ------------------- 0x00000001cafebabe */ } }
_6.java
package itepub.net._20100805; public class _6 { public static void main(String[] args) { System.out.println((int)(char)(byte)-1);//65535 // -1 ffffffff // (byte)-1 ff // (char)(byte)-1 ffff // (int)(char)(byte)-1 000000ff //65535 System.out.println(Math.pow(2, 16) - 1);//65535.0 /* * 如果最初的数值类型是有符号的,那么久执行符号扩展。 * 如果最初的数值类型是char类型,则都执行零扩展,无论转换成何种类型。 */ } }
_7.java
package itepub.net._20100805; /** * 异或操作 * @author yuahan * */ public class _7 { public static void main(String[] args) { int x = 1984; //0x7c0 int y = 2001; //0x7d1 x ^= y ^= x ^= y; System.out.println(x); //0 System.out.println(y); //1984 // x = x^y^x^y = x^x^y^y = (x^x)^(y^y) = 0^0 = 0 // y = y^x^y^ = x^(y^y) = x^0 = x } }
_8.java
package itepub.net._20100805; /** * 条件表达式 * @author yuahan * */ public class _8 { public static void main(String[] args) { char x = 'A'; int y = 0; double z = 1D; System.out.println(true ? x : x); //A System.out.println(true ? x : 0); //A System.out.println(true ? x : y); //65 System.out.println(false ? y : x); //65 System.out.println(true ? z : y); //1.0 /* * 1. 如果第二个和第三个操作数的数据类型相同,那么结果便是此类型 * 2. 如果第二个和第三个操作数的数据类型不同,且第三个操作数是一个长度更长的类型的'常量',那么结果可以第二个操作数的类型 * 3. 如果第二个和第三个操作数的数据类型不同,且第二个操作数是一个长度更长的类型,那么结果必须是第二个操作数的类型。 */ } }
_9_10.java
package itepub.net._20100805; /** * 半斤、八两 * @author yuahan * */ public class _9_10 { public static void main(String[] args) { /* * 1.使得 x += i 成立但是 x = x + i 不成立 * 复合赋值表达式是将右边的数据类型强制转换成左边的 * 2.使得 x = x + i 成立但是 x += i 不成立 * 当使用String操作+符时,其他的数据类型会变成String类型,而对于Object来说,+操作是不合法的 * */ short x = 0; int i = 1234567; x += i; System.out.println(x); //-10617 // x = x + i;//编译有问题 Object a = "Buy "; String b = "Effective Java!"; a = a + b; System.out.println(a); // a += b;//编译有问题 } }
发表评论
-
applet 您的安全设置已阻止本地应用程序运行
2013-08-23 19:13 1781控制面板中把JAVA的安全设置调至最低,然后重启浏览器。 -
Failed to create the Java Virtual Machine
2010-10-31 11:14 1342今天启动Eclipse,告诉我“Failed to creat ... -
udp sender 精确到毫秒
2010-10-22 20:14 12761。源文件。 package sender; impor ... -
Java实现的9种排序方法
2010-10-22 14:46 1044详见代码。 package com.java.sort; ... -
Java的System.getProperty()方法可以获取的值
2010-09-29 16:14 921ava的System.getProperty()方法可以获取的 ... -
Java 执行系统文件
2010-09-29 14:59 1022以下两个事例是执行Windows下的命令或者可执行文件。 ... -
Java access control
2010-08-19 18:31 901Java中有4个访问级别(不同于C或者C++的3个)。但规则同 ... -
Java中需要注意的函数
2010-08-17 22:23 1040(持续更新中。。。) ... -
Java面试题
2010-08-08 18:39 858最近在网上看到很多Java ... -
Java 入门
2010-08-06 16:59 1831(转载 IBM DeveloperWorks) ... -
Java中的深拷贝与浅拷贝
2010-08-06 06:32 958在Java中,一个重要的,而且是每个类都有的方法,clone( ... -
Java 容器类
2010-08-06 05:05 856Java功能丰富的集 ... -
java5 新特性
2010-08-05 19:31 38341.静态导入方法 package c ... -
Comparator and Comparable in Java
2010-08-05 19:10 9511. java.lang.Comparable java ... -
Java中 synchronize、wait和notify3
2010-08-05 19:07 901package com.java.lang.thread. ... -
Java中 synchronize、wait和notify2
2010-08-05 19:06 1563有一个生产者消费者实例,修改了一下,觉得还行,javaeye上 ... -
Java中 synchronize、wait和notify
2010-08-05 18:53 2333认识Java一段时间了了,到目前为止还没有好好认识一下其中的s ... -
Java中的String类
2010-08-05 18:42 10411. 正像很多人所说的那样,equals 和 == 是完全两个 ...
相关推荐
java 解惑 java 解惑 java 解惑 java 解惑 java 解惑 java 解惑
《Java解惑(中文版)》是一本专为Java初学者设计的学习资料,旨在帮助读者解答在学习Java过程中遇到的各种困惑。"solve65p"可能代表这本书包含65个问题或主题,每个都深入浅出地进行了讲解,旨在解决初学者在编程...
Java PUZZLE Java 解惑 Java PUZZLE Java 解惑 Java PUZZLE Java 解惑Java PUZZLE Java 解惑 Java PUZZLE Java 解惑 Java PUZZLE Java 解惑
《Java解惑中文版》是一本专为Java程序员设计的指南,旨在帮助读者解决在编程过程中遇到的各种问题,提升程序的健壮性。本书深入浅出地探讨了Java语言的核心概念、常见疑惑以及最佳实践,旨在使开发者能够编写出更...
"JAVA解惑"的主题针对的是Java学习过程中遇到的一些常见问题和难点,旨在帮助开发者深入理解和解决这些问题。以下是基于这个主题和描述可能涵盖的一些关键知识点: 1. **Java基础**:这可能包括变量、数据类型、...
《Java解惑》 布洛克 著;陈昊鹏 译 扫描清晰带目录,仅供参阅,请支持正版
这份“Java解惑.pdf”文档很可能包含了解决Java开发者在编程过程中遇到的常见问题和困惑的详细解答。以下是可能涵盖的一些Java相关知识点: 1. **基础语法**:Java的基础语法包括变量、数据类型、运算符、流程控制...
"java解惑" PDF版本
文档《java解惑 PDF版》中列举了95个这样的谜题,每个谜题都旨在帮助开发者理解并纠正一些常见的错误理解。以下是根据提供的部分内容解析的几个相关知识点。 ### 表达式谜题与取余操作符(%)的行为 在Java中,...
《JAVA解惑》这本书主要针对Java编程中遇到的各种常见问题和困惑进行了解答,旨在帮助开发者深入理解Java语言,提高编程技巧。以下是一些关键的知识点解析: 1. **异常处理**:Java中的异常处理是通过try-catch-...
《JAVA解惑》是Java开发者领域的一本经典著作,它被广大编程爱好者称为Java四大名著之一,旨在解决初学者及有一定经验的开发者在学习和使用Java过程中遇到的各种困惑。这本书深入浅出地讲解了Java语言的核心概念和...
讲述如何在程序中避免程序缺陷和程序陷阱的,解惑的过程中,介绍了一些Java编程语言中许多不易被掌握的知识点,其阅读价值非常高,适合具有Java知识的学习者和有编程经验的Java程序员阅读。
"Java解惑"这个主题,显然旨在帮助开发者解决他们在学习和实践中遇到的问题。在Java的世界里,疑惑可能涵盖语法、类库、框架、并发、内存管理等多个方面。下面,我们将深入探讨一些常见的Java解惑知识点。 1. **...
"java解惑"这个主题旨在帮助初学者理解和解决在学习Java过程中遇到的问题,通过实例来深入浅出地讲解Java的基础知识,同时也强调了实用技巧和注意事项。 "Java解惑"的资料可能包含了两部分:`.chm`和`.pdf`格式的...
"Java解惑(中文).pdf"这份文档很显然是为了帮助Java开发者解决他们在编程过程中遇到的一些常见困惑和误解。这份高清版、文字版的资料很可能包含了深入浅出的解释和实例分析,以中文的形式呈现,使得国内开发者更容易...
《Java解惑(中文)》是一本专门为Java开发者编写的指南书籍,旨在解决在实际编程过程中遇到的各种疑惑和难题。本书以中文语言呈现,使得国内的Java程序员能够更轻松地理解并应用其中的知识。通过阅读这本书,读者...
### JAVA解惑中的关键知识点解析 #### 谜题1:奇数性的判断 在《JAVA解惑》一书中,作者通过一系列实例介绍了Java编程语言中的一些不易掌握的知识点。其中一个例子是关于如何正确判断一个整数是否为奇数。 **原始...