1.用位移操作
import junit.framework.TestCase;
public class TestDataTypeSize extends TestCase{
public void testLong(){
long a= 0;
int count = 0;
while(a !=0){
a = (a << 1);
count++;
}
assertEquals(64, count);
}
public void testInt(){
int a= 0;
int count = 0;
while(a !=0){
a = (a << 1);
count++;
}
assertEquals(32, count);
}
public void testShort(){
short a = 0;
int count = 0;
while(a !=0){
a = (short) (a << 1);
count++;
}
assertEquals(16, count);
}
public void testByte(){
byte a= 0;
int count = 0;
while(a !=0){
a = (byte) (a << 1);
count++;
}
assertEquals(8, count);
}
}
2.用数据流
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import junit.framework.TestCase;
public class TestDataTypeSize extends TestCase {
public void testLong() throws IOException{
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(byteArrayOutputStream);
dataOutputStream.writeLong(0);
assertEquals(8, byteArrayOutputStream.size());
dataOutputStream.close();
}
public void testInt() throws IOException{
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(byteArrayOutputStream);
dataOutputStream.writeInt(0);
assertEquals(4, byteArrayOutputStream.size());
dataOutputStream.close();
}
public void testShort() throws IOException{
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(byteArrayOutputStream);
dataOutputStream.writeShort(0);
assertEquals(2, byteArrayOutputStream.size());
dataOutputStream.close();
}
public void testByte() throws IOException{
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(byteArrayOutputStream);
dataOutputStream.writeByte(0);
assertEquals(1, byteArrayOutputStream.size());
dataOutputStream.close();
}
}
分享到:
相关推荐
java简单代码
这是使用Java编程来求输入数阶乘的一个经典例子,请大家有需要的多多参考!
求整数的位数及各位和
4. 题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
6位数,共有几种排列组合的算法,java实现
本书讲解了100个各种类型的Java编程趣味题的求解过程,旨在帮助读者培养编程兴趣,拓宽Java编程思维,提高Java编程能力,掌握用程序设计解决实际问题的方法与技巧。本书取材注重趣味性与实用性,内容涵盖了Java编程...
java 求任意一个正数的阶乘 java 求任意一个正数的阶乘
输入一个整数,统计其位数。代码已经过优化,效率高。
8.不多于五位数的整数逆序.java
JAVA实现的两个特大整数相乘的算法,可以达到1000位数相乘。
java代码-使用java生成一个固定位数的随机字符串,并加密,和用户密码加密后的密文组合的源代码 ——学习参考资料:仅用于个人学习使用!
java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...
outputMax.java 求两个数中的最大数 overflowExample.java 演示溢出 precedence.java 演示自加运算符的优先级 primeNumber.java 输出100-200之间的所有素数 ranking.java 评定成绩等级 rankingBySwitch.java ...
Java中限制小数位数问题,平常经常遇到的小问题。
在上述代码中,首先声明了一个无符号整数变量num和一个整数变量count,用于保存输入的正整数和位数。然后通过scanf函数让用户输入一个正整数。 接下来的while循环中,每次将num除以10,并将结果赋值给num,同时...
java生成十个不重复的随机数,要求不重复
C语言求整数位数并逆序打印每一位数字
c语言求正整数的位数
SSEG SEGMENT STACK 'STACK' db 256 DUP(0) SSEG ENDS CSEG SEGMENT 'CODE' START PROC FAR ; set segment registers: MOV AX, DSEG MOV DS, AX MOV ES, AX MOV AX, 4C00h ;... set entry point.
UITextFiled控件,限制输入浮点数的整数以及小数的位数; .