第六天 Java的数据溢出应对方式
2013-03-28 02:31
218 查看
由上一篇的博文的代码:public class datamo02{
public static void main(String args[]){
int num = Integer.MAx_VALUE;
System.out.println("整型的最大值是"+num);
System.out.println("整型的最大值是+1:"+(num+1)); //注意写法 多加一个括号,否者语句将不对应。
}
}
由此 我们可以知道 Integer.MAX_VALUE是输出数据类型的最大值。那么我们如何让数据不溢出呢?
接下来我们使用的方法是加长数据类型:
public class datamo02{
public static void main(String arge[]){
int num = Integer.MAX_VALUE;
System.out.println("那么整形的最大值是:"+num); \\输出的整形最大值是2147483647
System.out.println("那么我们用整形的最大值加1数据溢出:"+(num+1));
System.out.println("用强制转换数据类型加长类型输出:"+((long)num+1));
}
}
由此输出:2147483648.就不再是负数了。由此可见,我们扩大了数据类型,就可以避免造成数据溢出。
字符类型(Char)
这个也算是一种数据类型,字符类型在内存中占有2个字节,可以用来存储英文等字符,那么当计算机处理字符类型的时候,把字符当成不同的整数来对待。
那么我们要输出字符怎么输出呢?看下面的程序输出:
public class datemo02{
public static void main(String arge[]){ \\主方法
char ch1 = 'a'; \\注意:字符要使用单引号括上
char ch2 = 97; \\在阿斯克码中a是97
那么我们来输出一下就明白了:
System.out.println("Cha1 ="+Ch1);
System.out.println("Cha2 ="+Ch2);
}
}
得到的结果都是字符a。
那么在我们Java中比较可爱的是:
再加一条:System.out.println("Cha1+1="+(ch1+1));
那么他输出的结果是:98不再是字符了。这是因为在输出中包含了运算符号,Java就会输出运算的数值。
本文出自 “筑梦小组-执行策划韦毅” 博客,谢绝转载!
public static void main(String args[]){
int num = Integer.MAx_VALUE;
System.out.println("整型的最大值是"+num);
System.out.println("整型的最大值是+1:"+(num+1)); //注意写法 多加一个括号,否者语句将不对应。
}
}
由此 我们可以知道 Integer.MAX_VALUE是输出数据类型的最大值。那么我们如何让数据不溢出呢?
接下来我们使用的方法是加长数据类型:
public class datamo02{
public static void main(String arge[]){
int num = Integer.MAX_VALUE;
System.out.println("那么整形的最大值是:"+num); \\输出的整形最大值是2147483647
System.out.println("那么我们用整形的最大值加1数据溢出:"+(num+1));
System.out.println("用强制转换数据类型加长类型输出:"+((long)num+1));
}
}
由此输出:2147483648.就不再是负数了。由此可见,我们扩大了数据类型,就可以避免造成数据溢出。
字符类型(Char)
这个也算是一种数据类型,字符类型在内存中占有2个字节,可以用来存储英文等字符,那么当计算机处理字符类型的时候,把字符当成不同的整数来对待。
那么我们要输出字符怎么输出呢?看下面的程序输出:
public class datemo02{
public static void main(String arge[]){ \\主方法
char ch1 = 'a'; \\注意:字符要使用单引号括上
char ch2 = 97; \\在阿斯克码中a是97
那么我们来输出一下就明白了:
System.out.println("Cha1 ="+Ch1);
System.out.println("Cha2 ="+Ch2);
}
}
得到的结果都是字符a。
那么在我们Java中比较可爱的是:
再加一条:System.out.println("Cha1+1="+(ch1+1));
那么他输出的结果是:98不再是字符了。这是因为在输出中包含了运算符号,Java就会输出运算的数值。
本文出自 “筑梦小组-执行策划韦毅” 博客,谢绝转载!
相关文章推荐
- Java导入数据到Excel表格(poi方式)
- java对实体类列表进行方法内排序,不修改数据查询方式
- 通过java程序打开网页接受原码并进行数据爬取(链接方式)
- java中的各种数据类型在内存中存储的方式
- Java中由于数据太大自动转换成科学计数法解决方式
- Java中由于数据太大自动转换成科学计数法解决方式
- 使用java JDBC方式操作oracle blob类型数据
- 关于MySQL的整型数据的内存溢出问题的应对方法
- Java多个线程之间处理共享数据的方式
- salesforce 零基础学习(三十三)通过REST方式访问外部数据以及JAVA通过rest方式访问salesforce
- Java导入excel大量数据出现内存溢出解决方案
- java方式的将java对象以及list或者map转化为json数据
- java学习总结(06,05.16)计算机对数据的储存方式以及原码反码补码的概念
- java代码导入excel数据至oracle(poi方式)
- java 大数据处理之内存溢出解决办法(一)
- java使用DES加密方式,实现对数据的加密解密
- java中数据类型在内存中存储的方式
- JAVA中的各种数据类型在内存中存储的方式
- 详解Java实现多种方式的http数据抓取
- Java语言开发OPC之Utgard的数据访问方式