Java中的一些常见错误
1.空指针错误
在java数组的使用中,有时候需要对字符串数组中的元素进行对比。那么当元素不为null时,程序会正常运行;然而,一旦对比的元素为null,那么程序就会出现空指针错误。
解决方法:加入保护,当元素不为null时在进行判断。
public static void main(Sring[] args){
String [] sums = "adfafA";
for(int i=0;i<sums.length;i++){
if(sums[]!=null && sums[i].equals(sr)){
System.out.println("找到元素"+sums[i]);
break;
}
}
}
2.数据的精度范围与类型转换
在Java中有4种基础类型数据:
整型: -1 2 3 4 ……
浮点型:float 1.3f ; double 3.2 3.5d (未标明类型,默认最高精度)
字符型:采用Unicode编码,2字节
布尔型:true、false
|
|
|
格式 |
长度 |
精度范围 |
|
整 型 |
byte |
-1 2 3 4 …… |
1字节 |
-128~127 |
|
short |
-1 2 3 4 …… |
2字节 |
||
|
int |
-1 2 3 4 …… |
4字节 |
||
|
long |
-1l ,2l, 3l ,4l,5L …… |
8字节 |
||
|
浮点型 |
float |
2.3f (符号不区分大小写) |
4字节 |
|
|
double |
3.2 2.3d |
8字节 |
||
|
字符型 |
char |
‘A’ |
2字节 |
|
公式:n位二进制存储精度范围= -2n-1~2n-1-1(1字节=8位二进制) |
四种基础类型数据的精度范围各不相同,逐级提升。
如果在使用数据类型时,不注意精度范围,就会出现数据溢出,从而发生计算错误。
四种基础类型中,整型,浮点型和字符型数据是可以相互转化的。
转换规则如下:
①隐形转换:精度小的数据值,赋值给精度大的值,可以自动转换。(低级向高级)
②强制转换:范围大的数据值,(高级到低级)
③运算自动提升规则:运算中,自动转换为精度高的数据类型。
3.三种循环的使用
①for 循环:是一种有限次数的循环,在循环前,规定好循环次数。
for(表达式;表达式;表达式){
循环体
}
break语句:执行后,立即跳出循环,不在执行后面的语句,且结束所有循环。
continue 语句:执行后,立即跳出当前单词循环,重新判断条件是否继续循。
②While循环语句:适合未知次数的循环。
while(条件表达式){
语句
};
③do-While循环:也是未知次数的循环。单至少要先执行一次do,在判断。如果while成立,继续循环,反之,结束循环。
do {
语句
}while(条件表达式);
Java中的一些常见错误的更多相关文章
- 深入探讨Java中的异常与错误处理
Java中的异常处理机制已经比较成熟,我们的Java程序到处充满了异常的可能,如果对这些异常不做预先的处理,那么将来程序崩溃就无从调试,很难找到异常所在的位置.本文将探讨一下Java中异常与错误的处理 ...
- JAVA中enum的常见用法
JAVA中enum的常见用法包括:定义并添加方法.switch.遍历.EnumSet.EnumMap 1.定义enum并添加或覆盖方法 public Interface Behaviour{ void ...
- Java程序员注意——审查Java代码的六种常见错误
代码审查是消灭Bug最重要的方法之一,这些审查在大多数时候都特别奏效.由于代码审查本身所针对的对象,就是俯瞰整个代码在测试过程中的问题和Bug.并且,代码审查对消除一些特别细节的错误大有裨益,尤其是那 ...
- Java中9种常见的CMS GC问题分析与解决
1. 写在前面 | 本文主要针对 Hotspot VM 中"CMS + ParNew"组合的一些使用场景进行总结.重点通过部分源码对根因进行分析以及对排查方法进行总结,排查过程会省 ...
- 记一次在java中的日期parse错误
String dateString = "2014101517"; new SimpleDateFormat("yyyyMMddHH").parse(dateS ...
- Java中输入判定的错误和纠正
在编程过程中,很多技术人员看重程序的简洁性,效率性和包容性.其中最容易问到的就是假如输入数据不符合要求时的程序处理,这也是很多公司的机试题中应聘人员写出了符合功能要求的程序却并未通过面试的原因.下面是 ...
- 实用:Git 中的一些常见错误
无论是数据科学家.算法工程师还是普通开发人员,在每个团队协作开发任务中,Git 都是必不可少的版本控制工具,因此掌握它的基本操作十分有必要.但即便是教程满天飞的今天,开发人员在使用 Git 时也还是会 ...
- Java中枚举的常见用法
在JDK1.5以后引入了一种新的类型,就是枚举(enum).enum是用来声明枚举类型数据,它可以像数组一样存储许多的元素,但是不同于数组的是,它除了数字不能存储以外, 其他类型的如字母.特殊符号.汉 ...
- Java中避免空指针常见的方法
什么是空指针? 当一个变量的值为null时,在Java里表示一个不存在的空对象,没有实际内容,没有给它分配内存,null也是对象成员的默认值.所以,一个对象如果没有进行初始化操作,这时如果调用这个对象 ...
随机推荐
- 关于Java IM的一点资料
微信是腾讯采用自己开发的协议做的,其他市面上很多产品大都是采用XMPP协议,包括米聊在内之前也是这样子. 采用XMPP协议,服务端可以采用OpenFire搭建,客户端有个开源的叫asmack的东西,g ...
- ava下static关键字用法详解
Java下static关键字用法详解 本文章介绍了java下static关键字的用法,大部分内容摘自原作者,在此学习并分享给大家. Static关键字可以修饰什么? 从以下测试可以看出, static ...
- Android 学习手札(三) 视图(View)
在Android 系统红,任何可视化组件都需要从android.view.View类继承.可以使用两种方式创建View对象. · 一种方式是使用XML来配置View的相关属性,然后使用相应的方法来装载 ...
- Asp.net服务器控件在IE10下的不兼容问题
Asp.net服务器控件在IE10下的不兼容问题 时间:2013-05-16 09:07点击: 89 次 [大 中 小] 相信很多使用IE10的童鞋们已经发现了这个问题,以下是本人在IE10标准模式下 ...
- Yeoman安装
Yeoman帮助我们创建项目,提供更好的工具来使我们的项目更多样化. Yeoman提供generator系统,一个generator是一个插件,在我们在一个完整的项目上使用‘yo’命令时,会运行该ge ...
- Win7 下,离线安装 Android Studio 1.0.1 的方法
此教程没有亲自动手试过,先保存在这里 http://download.csdn.net/detail/tuobaxiao2008/8268281
- yii2的安装使用
一.Yii2框架 Yii2框架有基本和高级两种版本,主要区别是高级版已经分好了前台.后台,基本版只有前台 二.归档安装方法 归档安装方发很简单,只需要在官网上下载归档文件后,解压即可使用(但是不使用c ...
- 如何在eclips下将一段代码抽取为方法Extract Method
最近读了读关于重构的文章,做了个小总结(在编程思想目录下<从文章"避免复制与粘贴"到文章"Extract Method"的反思 系列>). 然后因为 ...
- app上传 需要的icon
如果提交的ipa包中,未包含必要的Icon就会收到类似的通知,为什么偏偏是Icon-76呢? 因为我们开发的游戏,默认是支持iphone以及ipad的,根据官方提供的参考 Icon-76.png是必须 ...
- Quartz1.8.5例子(九)
/* * Copyright 2005 - 2009 Terracotta, Inc. * * Licensed under the Apache License, Version 2.0 (the ...