Java基础-第四天作业
2016-05-06 15:49
519 查看
1.将按位运算操作,尤其是左移和右移(有无符号)整理到自己的博客中。 重点说明清晰负数的运算过程。
2.byte数到十六进制字符串表现形式程序设计原理和实现方式整理到博客中。
3.定义函数,计算一位整型数组所有元素的和。4.数组的拷贝。
5.堆内存默认是1/4,----------------------------------------java -Xmx//设置堆内存最大值-Xms//设置堆内存初始值className//类名
1.//位运算a = 3 ; b = -3 二进制形式 +3:0000 0011 取反加一 -3:1111 1101有符号移动:a<<2 向左移动两位 0000 1100 十进制是12 b<<2 向左移动两位 1111 0100 十进制是-12 a>>2 向右移动两位 0000 0000 十进制是0 b>>2 向右移动两位 1111 1111 十进制是-1无符号移动:a<<<2 向左移动两位 0000 1100 十进制是12 b<<<2 向左移动两位 1111 0100 十进制是-12 a>>>2 向右移动两位 0000 0000 十进制是0 b>>>2 向右移动两位 0011 1111 十进制是632./*
*字节转十六进制
*十六进制每位0-f 换做二进制4位 所以把byte分为两段,分别和0000 1111相与 &,所得出的值即为十六进制数,高位向右移动四位跟低位操作一样,并定义十六进制字符数组,让高地位得出的整数作为数组下标取出十六进制相应字符,得出返回值。(注意返回值是拼接字符串,返回值类型为String)
*/
class Byte2Hexade{
public static void main(String[] args){
byte b=110;
System.out.print(byte2Hexade( b ));
}
public static String byte2Hexade(byte b1){
int low =b1 & 0x0f;
int hig =(b1>>4 ) &0x0f;
char[] c=new char[]{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
return ( " "+c[hig] + c[low]+" ");
}
}
3.class SumDemo{
public static void main(String[] args){
sum(new int[]{1,3,5,7});
}
public static void sum(int[] arr){
int sum=0;
for( int i=0; i<arr.length ; i++ ){
sum=sum+arr[i];
}
System.out.println(sum);
}
}
4.
class CopyArray{
public static void main(String[] args){
print(copy(new int[]{2,4,6,8,10}));
}
public static int[] copy(int[] arr){
int[] arry=new int[arr.length];
for( int i=0; i<arr.length; i++ ){
arry[i]=arr[i];
}
return arry;
}
public static void print(int[] arr){
for(int i=0 ;i<arr.length ;i++ ){
System.out.print(arr[i]+" ");
}
}
}
5.堆内存的默认最大空间是物理内存的1/4,在运行java程序时,可以通过 -Xms初始堆内存的大小,-Xmx设置最大堆内存的大小;
2.byte数到十六进制字符串表现形式程序设计原理和实现方式整理到博客中。
3.定义函数,计算一位整型数组所有元素的和。4.数组的拷贝。
5.堆内存默认是1/4,----------------------------------------java -Xmx//设置堆内存最大值-Xms//设置堆内存初始值className//类名
1.//位运算a = 3 ; b = -3 二进制形式 +3:0000 0011 取反加一 -3:1111 1101有符号移动:a<<2 向左移动两位 0000 1100 十进制是12 b<<2 向左移动两位 1111 0100 十进制是-12 a>>2 向右移动两位 0000 0000 十进制是0 b>>2 向右移动两位 1111 1111 十进制是-1无符号移动:a<<<2 向左移动两位 0000 1100 十进制是12 b<<<2 向左移动两位 1111 0100 十进制是-12 a>>>2 向右移动两位 0000 0000 十进制是0 b>>>2 向右移动两位 0011 1111 十进制是632./*
*字节转十六进制
*十六进制每位0-f 换做二进制4位 所以把byte分为两段,分别和0000 1111相与 &,所得出的值即为十六进制数,高位向右移动四位跟低位操作一样,并定义十六进制字符数组,让高地位得出的整数作为数组下标取出十六进制相应字符,得出返回值。(注意返回值是拼接字符串,返回值类型为String)
*/
class Byte2Hexade{
public static void main(String[] args){
byte b=110;
System.out.print(byte2Hexade( b ));
}
public static String byte2Hexade(byte b1){
int low =b1 & 0x0f;
int hig =(b1>>4 ) &0x0f;
char[] c=new char[]{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
return ( " "+c[hig] + c[low]+" ");
}
}
3.class SumDemo{
public static void main(String[] args){
sum(new int[]{1,3,5,7});
}
public static void sum(int[] arr){
int sum=0;
for( int i=0; i<arr.length ; i++ ){
sum=sum+arr[i];
}
System.out.println(sum);
}
}
4.
class CopyArray{
public static void main(String[] args){
print(copy(new int[]{2,4,6,8,10}));
}
public static int[] copy(int[] arr){
int[] arry=new int[arr.length];
for( int i=0; i<arr.length; i++ ){
arry[i]=arr[i];
}
return arry;
}
public static void print(int[] arr){
for(int i=0 ;i<arr.length ;i++ ){
System.out.print(arr[i]+" ");
}
}
}
5.堆内存的默认最大空间是物理内存的1/4,在运行java程序时,可以通过 -Xms初始堆内存的大小,-Xmx设置最大堆内存的大小;
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树