文档章节

javase基础

脑丨残
 脑丨残
发布于 2014/01/04 18:17
字数 976
阅读 80
收藏 2
点赞 1
评论 0

Java中一共有8种基本类型,4种整型,2种浮点类型,1种用于表示Unicode编码的单元的字符类型char,和boolean用于表示真值。

4种整型 int 4字节short 2字节long 8字节 byte 1字节,2种浮点类型,float 4字节,double 8字节,另Java种没有任何无符号类型。Float类型的数值后缀F,没有后缀F的浮点数值默认为double类型,也可以在浮点数值后面添加D。

一个正整数除以0的结果为正无穷大,计算0/0或者负数的平方根结果为NaN。

常量Double.POSITIVE_INFINITY,Double.NEGATIVE_INFINITY和Double.NaN,分别表示上述3个值,注意,不能检测一个特定值是否等于Double.NaN:

       if(x == Double.NaN) // is  never true

所有”非数值”的值都认为是不相同的。然而可以使用Double.isNaN方法:

       If(Double.isNaN(x))//check whether x is “not a number”

       浮点数值不适用于禁止出现舍入误差的金融计算中,例如,命令System.out.println(2.0 – 1.1) 将打印出0.89999999999,而不是0.9,主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确的表示分数1/10。

       如果需要在数值计算中不含有任何舍入误差,就应该使用BigDecimal类。

       在声明变量时,除了不能讲变量名命名为Java保留字,可以在一行中声明多个变量,

int i,j //both are integers

不过不提倡这种风格,逐一声明每一个变量可以提高程序的可读性。另在Java中,不区分变量的声明与定义。

       关键字final表示这个变量只能被复制一次,一旦被复制之后,就不能再次更改了,习惯上常量名使用大写。在Java中,经常希望某一个可以在一个类中的多个方法使用,通常将这些常量称为类常量。可以使用关键字static final设置一个类常量。需要注意的是,类常量的定义位于main方法的外部,因此,在同一个类的其他方法中也可以使用这个常量,而且,如果一个常量被声明public,那么其他类的方法也可以是使用一个常量。

       const是Java保留的关键字,但目前并没有使用,在Java中,必须使用final定义常量。

Java支持三元操作?: 在很多时候,这个操作非常有用。表达式

condition ?expression1 : expresssion2

当条件condition为真时计算第一个表达式,否则计算第2个表达式。例如:

x < y ? x : y

返回x 和y中减小的那个值。

 

构建字符串

有些时候,需要由较短的字符串构建字符串,来自文件中的单词,采用字符串连接的方式达到此目的效率比较低,每次连接字符串都会构建一个新的String 对象,既耗时,有浪费空间,使用StringBuilder类就可以避免这个问题的发生。

如果需要用许多小段的字符串构建一个字符串,那么使用StringBuilder更高效,构建一个空的字符构建器:

StringBuilder builder = new StringBuilder();

用append方法添内容

              Builder.append(“str”);

用他的toString方法,可以得到一个String 对象,其中包含了构造器中的字符序列。

       String str = builder.toString();

StringBuilder类的前身是StringBuffer,其效率略微有些低,但允许采用多线程的方式执行添加或删除字符的操作。如果所有字符串都在一个单线程编辑,则应该使用StringBuilder替代它,这两个类的API是相同的。另外,StringBuilder:线程非安全的StringBuffer:线程安全的。关于这两个类的比较有很多文章都写的很清楚,这里就不多重复。

 

© 著作权归作者所有

共有 人打赏支持
脑丨残
粉丝 8
博文 59
码字总数 23267
作品 0
西安
javase总结报告

学习了这么久的java,我打算在这个暑假期间进行javase的总结,加深自己对java基础的理解 总结的重点有以下几个部分: 1.Socket网络编程 2.I/O文本操作 3.多线程 4.java集合框架 5.异常处理 ...

24_hours ⋅ 2014/07/29 ⋅ 0

java&javaweb学习笔记(汇总)

我的java&javaweb学习笔记(汇总) 笔记分为两大部分:javase和javaweb javase javaweb 笔记内容主要是对一些基础特性和编程细节进行总结整理,适合了解java基础语法,想进一步深入学习的人 gi...

brianway ⋅ 2016/02/09 ⋅ 2

JDK 1.7.55 与 1.8.05 发布

Oracle 的公告显示 35 个可在没有认证的情况下通过远程利用。其中 4 个 bug 的 CVSS 基础分值达 10,这是一个 bug 的最危险级别。 具体更新:http://www.oracle.com/technetwork/java/javase/...

Google ⋅ 2014/04/17 ⋅ 17

java学习走向以及学习的方式

javase基础还行,公司主要使用的技术还是javase,却经常和各种容器打交道,是否学习javaee,感觉学习了se做不出很多东西,这样长期就有点手软,而且知识不用会慢慢的忘掉,java的界面,表示不...

xpbob ⋅ 2015/07/17 ⋅ 3

一整套的学习视频

安卓开发机密教程 http://edu.csdn.net/heima/video/androidVideo.html?fst Java基础教程 http://edu.csdn.net/heima/video/javasebxd.html?fst Java高新技术 http://edu.csdn.net/heima/vi......

adddss ⋅ 2012/07/28 ⋅ 0

转行学习java前,你应该知道的几件事

  本文需要5分钟左右阅读完成,建议收藏以后阅读,里面都是干货,可以亲自试验一下,如果觉得好用可以帮忙点赞转发一下,谢谢!交流学习java大数据可以加群460570824。   因为IT互联网发...

java分享 ⋅ 2017/12/10 ⋅ 0

zxing生成解析二维码以及二维码生成解析的一个Android应用程序

二维码技术不是什么新技术了,但是这几天工作用到,然后才现学习现使用,使用的是Google的ZXing,使用起来很简单, 我练习的两种方式,一种的简单的javase工程,一种是Android客户端生成解析...

Mysoft ⋅ 2015/11/13 ⋅ 0

【老男孩教育】2018年最新版大数据开发课程表

老男孩教育大数据开发课程适合所有对大数据开发有兴趣的人员,从JavaSE 到大数据生态圈高端课程的开发。课程内容量很大,有一定的难度和深度,认真学习,,技术会有很大程度的提升。 第一阶段...

老男孩python ⋅ 01/10 ⋅ 0

JDK 6 Update10(GA) 版本发布

此更新版本的内部版本号是1.6.0_10 - b33。外部版本号是6u10(即GA) 。 令人值得注意的是,此次发布提供了了下一代的Java插件。下一代Java插件是默认的IE和Firefox 3 。原来的(旧)插件仍然是...

红薯 ⋅ 2008/10/17 ⋅ 0

使用Swing写 Java 程序的图形界面(代码实例)

最近在整理之前写过的 JavaSE 代码,发现了很久以前写过的一个有趣的图形界面程序,本来试着去做一个王者荣耀助手的,发现需要太多的素材了,且基于Swing写界面远不如使用 html、css 等以网页...

larger5的博客 ⋅ 2017/12/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

用SQL命令查看Mysql数据库大小

要想知道每个数据库的大小的话,步骤如下: 1、进入information_schema 数据库(存放了其他的数据库的信息) use information_schema; 2、查询所有数据的大小: select concat(round(sum(da...

源哥L ⋅ 44分钟前 ⋅ 0

两个小实验简单介绍@Scope("prototype")

实验一 首先有如下代码(其中@RestController的作用相当于@Controller+@Responsebody,可忽略) @RestController//@Scope("prototype")public class TestController { @RequestMap...

kalnkaya ⋅ 49分钟前 ⋅ 0

php-fpm的pool&php-fpm慢执行日志&open_basedir&php-fpm进程管理

12.21 php-fpm的pool pool是PHP-fpm的资源池,如果多个站点共用一个pool,则可能造成资源池中的资源耗尽,最终访问网站时出现502。 为了解决上述问题,我们可以配置多个pool,不同的站点使用...

影夜Linux ⋅ 59分钟前 ⋅ 0

微服务 WildFly Swarm 管理

Expose Application Metrics and Information 要公开关于我们的微服务的有用信息,我们需要做的就是将监视器模块添加到我们的pom.xml中: 这将使在管理和监视功能得到实现。从监控角度来看,...

woshixin ⋅ 59分钟前 ⋅ 0

java连接 mongo伪集群部署遇到的坑

部署mongo伪集群 #创建mongo数据存放文件地址mkdir -p /usr/local/config1/datamkdir -p /usr/local/config2/data mkdir -p /usr/local/config3/data mkdir -p /usr/local/config1/l......

努力爬坑人 ⋅ 今天 ⋅ 0

React Native & Weex 区别

JS引擎 Weex使用V8, React native使用JSCore JS开发框架 ( Js Framework ) Weex基于vue.js(2W+ star)。小巧轻量的前端开发框架,组件化,数据绑定,2.0引入virtual dom。 ReactNative使用...

东东笔记 ⋅ 今天 ⋅ 1

UIkit 分页组件动态加载简单实现

1. 问题描述 使用过UIkit分页组件的都清楚,UIkit的分页不能动态刷新数据,也就是不能在点击下一页的时候,动态从后台加载数据,并且刷新页数以及该页数上的数据,下面是一个简单实现,没有做...

影狼 ⋅ 今天 ⋅ 0

Mobx入门之三:Provider && inject

上一节中<App/>组件传递状态temperatures给children -- <TemperatureInput />,如果组建是一个tree, 那么属性的传递则会非常繁琐。redux使用Provider给子组件提供store, connect将子组件和s...

pengqinmm ⋅ 今天 ⋅ 0

魔兽世界 7.0版本 S23/S24/S25全职业普通+精锐套

  死亡骑士   (联盟)   (部落)   (精锐)   恶魔猎手   (联盟)   (部落)   (精锐)   德鲁伊   (联盟)   (部落)   (精锐)   猎人   (联盟) ...

wangchen1999 ⋅ 今天 ⋅ 0

maven顶级pom和子pom的版本号批量修改

当一个版本发布,新起一个版本时,我们只需要手动修改一下项目中pom.xml的版本号就可以了。但是如果这个maven项目有很多的子模块项目,那么一个个手动的去改就显得费时费力又繁琐了。还好,m...

ArlenXu ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部