- 浏览: 297966 次
- 性别:
- 来自: 杭州
博客专栏
-
Java面试
浏览量:0
文章分类
- 全部博客 (133)
- Struts2 (4)
- Hibernate (2)
- Spring (3)
- Java常识小积累 (18)
- Linux (6)
- Oscache (1)
- 面试技巧 (2)
- Eclipse (4)
- JavaScript (21)
- 生活 (7)
- Mysql (3)
- 网络优秀文章 (1)
- Freemaker (1)
- Tcp和UDP (1)
- ubuntu -java (1)
- Oracle (14)
- 重构 (1)
- webservice (4)
- Lucene (1)
- UML与OOA/D (1)
- 软件杂谈 (2)
- Nosql(Redis) (1)
- 团队开发 (1)
- Oracle 设计 (1)
- velocity (1)
- 面试那些事儿 (1)
- 技术 (1)
- 互联网 (1)
- 数据库 (1)
- jquery (1)
- java (2)
- fastjson (1)
- Remoting (1)
- 算法 (1)
- 学习技巧 (1)
- POI (3)
- FusionCharts (1)
- 学习资源 (1)
- 设计模式 (2)
- CSS (1)
- 技术边缘 (3)
- 生活感想 (0)
- JVM (1)
- JSON (0)
- 前端 (1)
- cxf (1)
- 分布式 (1)
- 阿萨德飞 (0)
- Java面试中的知识 (2)
- redis (1)
- 开发工具使用 (3)
最新评论
-
liushimiao0104:
请问下怎么删除word里面的图片呢
POI向word添加图片,表格 -
chpn:
addBatch确实可以1.这个和复合索引没得毛关系2.in查 ...
mysql 超1亿数据,优化分页查询 -
步青龙:
dagf113225 写道请问,这个mysql执行SQL的花费 ...
mysql 超1亿数据,优化分页查询 -
dagf113225:
请问,这个mysql执行SQL的花费的时间的工具叫什么?谢谢! ...
mysql 超1亿数据,优化分页查询 -
步青龙:
white_crucifix 写道我怎么觉得builder模式 ...
Builder设计模式
古老的代码,java代替goto,代码没有实际的意思,测试这种功能而已。注释解释啦功能。不知道还有没人会这样用。只是测试下这个功能。
Java代码
- aa: if (true) {
- int a = 101;
- if (a == 10) {
- System.out.println("==10");
- } else {
- break aa;
- }
- System.out.println("last");// 如果a不等于10的话就跳出aa代码块,不会打印last
- }
- bb: for (int num = 1; num <= 5; num++) {
- System.out.println("--------------- 第一层循环: " + num);
- for (int i = 0; i < 3; i++) {
- if (num == 4)
- continue bb;
- System.out.println("第二层循环: " + i);
- }
- }
1 三元运算符 对于只有赋值的形式的if else if else if 如果很多的话,不妨试试三元运算符,多三元运算符:
public class Test { public static String test1(String args){ if(args.equals("a1")){ if (!args.equals("a1")) { return "a other!"; } return "a1"; }else{ if (!args.equals("b1")) { if (args.equals("b2")) { return "b2"; }else{ return "b other!"; } } return "b1"; } } public static String test2(String args){ return args.equals("a1")? ( args.equals("a1")?"a1":"a other!" ): ( args.equals("b1")?"b1": (args.equals("b2")?"b2":"b other!") ); } public static void main(String[] args) { System.out.println(test1("a1")); System.out.println(test2("a1")); System.out.println("-------------"); System.out.println(test1("b1")); System.out.println(test2("b1")); System.out.println("==============="); System.out.println(test1("a1d")); System.out.println(test2("a1d")); System.out.println("-------------"); System.out.println(test1("b1d")); System.out.println(test2("b1d")); System.out.println("==============="); System.out.println(test1("b2")); System.out.println(test2("b2")); System.out.println("-------------"); } }
对于if(if else) else( if else)更简单
三目运算符的效率和if else差不多,一亿次的运算也相差32毫秒左右,而加强的for比普通的for效率要高很多,不到一倍,本地的测试:
int[] arrays = new int[10000]; int[] results = new int[10000]; long startTime = System.currentTimeMillis(); for (int i = 0; i < arrays.length; i++) { for (int j = 0; j < arrays.length; j++) { results[j] = arrays[j]; } } long endTime = System.currentTimeMillis(); System.out.println("普通for循环:" + (endTime - startTime) + "毫秒"); startTime = System.currentTimeMillis(); for (int i : arrays) { for (int j : arrays) { results[j] = arrays[j]; } } endTime = System.currentTimeMillis(); System.out.println("加强for循环:" + (endTime - startTime) + "毫秒");
结果如下:
普通for循环:360毫秒
加强for循环:250毫秒
下面的代码集中方法是同一种效果
public static void main(String[] args) { boolean boo1 = "415sdg".matches("\\^\\d \\$ ");// if it contains the boolean boo2 = "1515151515".matches("\\d*"); // if it not contains String a = "a"; System.out.println(threetype(a)); System.out.println(ifelse(a)); System.out.println(ifelse(a)); System.out.println(zhezhong(a)); System.out.println(zhezhong2(a)); a = "b"; System.out.println("==================="); System.out.println(threetype(a)); System.out.println(ifelse(a)); System.out.println(ifelse(a)); System.out.println(zhezhong(a)); System.out.println(zhezhong2(a)); a = "c"; System.out.println("==================="); System.out.println(threetype(a)); System.out.println(ifelse(a)); System.out.println(ifelse(a)); System.out.println(zhezhong(a)); System.out.println(zhezhong2(a)); a = "d"; System.out.println("==================="); System.out.println(threetype(a)); System.out.println(ifelse(a)); System.out.println(ifelse(a)); System.out.println(zhezhong(a)); System.out.println(zhezhong2(a)); a = "d6%^&*(((()_++++|"; System.out.println("==================="); System.out.println(threetype(a)); System.out.println(ifelse(a)); System.out.println(ifelse(a)); System.out.println(zhezhong(a)); System.out.println(zhezhong2(a)); } public static String threetype(String args) { return "a".equals(args) ? "a" : ("b".equals(args) ? "b" : ("c" .equals(args) ? "c" : ("d".equals(args) ? "d" : "other!"))); } public static String ifelse(String args) { String a = ""; if ("a".equals(args)) { a = "a"; } else { if ("b".equals(args)) { a = "b"; } else { if ("c".equals(args)) { a = "c"; } else { if ("d".equals(args)) { a = "d"; } else { a = "other!"; } } } } return a; } public static String zhezhong(String args) { String a = ""; boolean boo = "a".equals(args) || "b".equals(args) || "c".equals(args) || "d".equals(args); if (boo) { a = args; } else { a = "other!"; } return a; } public static String zhezhong2(String args) { boolean boo = "a".equals(args) || "b".equals(args) || "c".equals(args) || "d".equals(args); return boo ? args : "other!"; }
一种是if else太多看的人头晕,一种是代码让人看着苦涩难懂。一种是代码臃肿,一种是代码简洁。 那么你更喜欢那种呢?
public String toman(String inrole){ return "a".equals(inrole)? "a":("b".equals(inrole)? "b":("c".equals(inrole)? "c":("d".equals(inrole)? "d":"others!") )); }
发表评论
-
双色球数据抓入Mysql
2013-04-12 18:45 17341 mysql5.1 创建表 -- 创建表 id,开 ... -
从零学Java-Java简介
2013-02-28 15:06 27Java的发展史可百度获得 从零学 ... -
疑难杂症-itext 横纵混编
2013-02-26 16:20 1331POI在word处理写的能力很差,所以不适合生成复杂 ... -
itext对word处理合并单元格,处理图片,文档结构图
2013-01-18 16:29 7843效果: 代码: package com.aa ... -
Java与Javascript 最近值
2013-01-16 14:55 1770Double price = 19.0000; ... -
Java数学运算中 电脑计算和人的思维模式的差别
2012-12-13 15:31 8大多数情况下还是人的思维模式下的运算要快点。 怪状1: ... -
重构的重要性大于架构
2012-12-01 20:58 1731此文仅仅是个人理解。 架构和重构从本质上讲 ... -
Excel 参照列并单元格算法
2012-08-28 10:02 1066题目需要做的有2个功能 1 根据一个字符串数组 求出连续且相 ... -
Java基础误区
2012-08-12 01:36 9891 import java.util.Date; ... -
BigDecimal
2012-07-02 14:37 1108BigDecimal a = new BigDec ... -
朝花夕拾,Java基础回顾
2011-11-15 09:48 1135byte 在编译的时候最大可以多大?为什么? 为什么成员变量 ... -
ubuntu安装java
2011-07-04 04:23 13601:下载jdk ,比如:jdk-6u26-linux-i586 ... -
TCP和UDP
2011-07-01 16:43 1175TCP: Server端 try { Serve ... -
面试-编程-质数
2011-06-22 02:15 1147第一种算法 public static boolea ... -
Refecting in Java
2011-06-02 11:33 1172反射这个东西项目中会用到,如果我有一个Navigatio ... -
博客设计
2011-03-11 12:02 1290设计一个可以承受大访问量的博客表,Mysql数据库。 ... -
静态内部类-静态变量-非静态内部类之间的访问权限
2011-01-10 16:27 34public class Test { //注意静态 ... -
代码规范约定
2010-12-17 10:34 32处理变量,方法,类的命名之外 1必要 ... -
地址图片上传服务器
2010-11-17 14:12 561: 普通的地址图片上传,只能上传普通的地址一般是后缀jpg, ... -
htmlparser应用
2010-10-21 10:41 1663package com.util.md5; imp ...
相关推荐
"Java基础应用实例"这个主题旨在为初学者提供一系列实用的示例,帮助他们理解和掌握Java编程的基本概念。这些实例覆盖了从简单的数据类型、控制结构到面向对象编程的各个方面,为初学者提供了实践和探索的平台。 1....
Java基础类是Java编程中的核心组成部分,主要涵盖了Java标准库中的各种基础类和接口,用于构建复杂的GUI(图形用户界面)应用。Java基础类(JFC,Java Foundation Classes)是Sun Microsystems为提升Java GUI功能而...
### Java基础知识点详解 #### 一、Java语言基础概述 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems开发并在1995年发布。它以其平台无关性、安全性、可移植性和强大的网络功能而闻名。Java语言适用...
【Java基础】 Java是一种广泛使用的面向对象...这些是Java基础知识和高级技术的主要组成部分,掌握它们能够帮助开发者构建稳定、高效、可维护的Java应用程序。通过深入学习和实践,你可以不断提升自己的Java编程能力。
【Java OOP基础和应用:抽象类与final类】 面向对象编程(OOP)是Java的核心,其中抽象类和final类是两个关键概念,它们帮助我们实现代码的封装、继承和多态性。 **5.6.1 抽象类** 抽象类在Java中是一种特殊类型...
JavaSE 是桌面应用程序的开发基础,JavaEE 是企业环境下的应用程序开发,而 JavaME 是用于电子消费产品和嵌入式设备的开发。 Java 的开发和运行环境是 JDK(Java Development Kit),包括 Java 语言的开发工具和 ...
### Java基础知识技术详解 #### 一、Java语言概述 ##### 1.1 Java简介 Java是一种面向对象的编程语言,自1995年由Sun Microsystems公司发布以来,因其跨平台性和强大的功能,在软件开发领域占据了重要的地位。...
【Java基础知识点】 1. **Java的起源与特性** - Java是由SUN Microsystems公司(后被Oracle收购)开发的一种面向对象的编程语言。 - Java有三个主要版本:Java Standard Edition (JavaSE),用于桌面应用;Java ...
【Java基础整理笔记超详细】 Java是一门广泛使用的高级编程语言,由Sun Microsystems(后被Oracle收购)在1995年推出。它的设计目标是跨平台、面向对象,并且具有健壮性和安全性。Java这个名字源于印度尼西亚的咖啡...
### Java基础知识总结 #### 一、Java概述 Java是由Sun Microsystems公司(现已被Oracle收购)在1991年由James Gosling(詹姆斯·高斯林)领导的一个团队开始开发的一种面向对象的编程语言。最初被命名为Oak,目标...
Java是一种广泛使用的面向对象的编程语言,...总的来说,Java基础知识的加强不仅涉及语言语法,还包括工具的熟练使用和新特性的理解和应用。通过深入理解并实践这些知识点,开发者能够编写出更高效、更安全的Java代码。
### 魔乐Java基础知识点详解 #### 一、Java基础概述 在《魔乐Java基础》这门课程中,主要涵盖了Java编程语言的基础部分,包括但不限于语法基础、面向对象编程(OOP)、异常处理、多线程编程等内容。通过本课程的学习...
Java基础编程实例是Java初学者入门的绝佳资源,它涵盖了Java语言的核心概念和技术。这个教程旨在帮助新手理解并掌握Java编程的基本元素,从而能够独立编写简单的程序。以下是一些主要的知识点: 1. **Java环境配置*...
Java基础是编程世界中至关重要的一步,尤其对于初学者来说,掌握好Java基础知识将为后续的进阶学习打下坚实的基础。"Java基础的详细案例笔记"无疑是一份宝贵的资源,它涵盖了学习Java过程中最核心的概念和实战技巧。...
16. **关于null的处理方式**:在Java中,null是一个特殊的值,代表没有对象引用。理解null的性质,避免空指针异常(NullPointerException),以及使用Optional类等现代实践来处理null,是提高代码质量的关键。 以上...
### Java基础知识总结(超级经典) #### 一、Java概述 - **起源与发展**:Java语言始于1991年Sun公司的James Gosling等人发起的Oak项目,最初目标是为了控制嵌入式设备,如有线电视交换盒和个人数字助理(PDA)。...
本资源包包含了针对不同学习阶段的Java基础习题,旨在帮助学习者逐步深入理解Java的核心概念。 1. **基本语法与数据类型** Java的基础语法包括变量声明、常量定义、运算符使用等。数据类型分为基本数据类型(如int...
Java分为三个主要平台版本:Java SE(标准版)用于桌面应用,Java EE(企业版)用于服务器端应用开发,Java ME(微型版)则适用于移动设备和嵌入式系统。Java的设计哲学是“一次编写,到处运行”(Write Once, Run ...
总的来说,Java基础知识覆盖了编程语法、面向对象、异常处理、集合、泛型、反射、I/O、枚举、注解等多个方面,掌握这些知识点对于Java开发者来说至关重要,尤其是在面试过程中,能够体现出对Java的深入理解和实践...
### Java基础知识总结 #### 一、Java概述 Java是由Sun Microsystems公司(现已被Oracle收购)在1991年由James Gosling领导的团队所开发的一种面向对象的编程语言。最初被命名为Oak,目的是为了控制嵌入式设备和...