java基础第四天_复习运算符、进制转化和数组

1.按位运算操作

 答:

 /**

 * 运算符演示

 */

class CalcDemo{

    //入口点

    public static void main(String[] args){

 

//定义整型变量

int a = 3 ;

int b = 5 ;

 

//+-符号

System.out.println("******  正负号 *********");

System.out.println("+a = " + (+a)) ;

System.out.println("-a = " + (-a)) ;              负数由正数取反加1

//算术运算符 + - * / %

System.out.println("******  算术运算符 *********");

System.out.println("a + b = " + (a + b));

System.out.println("a - b = " + (a - b));

System.out.println("a * b = " + (a * b));

System.out.println("a / b = " + (a / b));

System.out.println("a % b = " + (a % b));

 

//赋值运算符  a += b ==> a = a + b

System.out.println("******  赋值运算符 *********");

System.out.println("a += b = " + (a += b));

System.out.println("a -= b = " + (a -= b));

System.out.println("a *= b = " + (a *= b));

System.out.println("a /= b = " + (a /= b));

System.out.println("a %= b = " + (a %= b));

 

//比较运算符

System.out.println("******  比较运算符 *********");

System.out.println("a == b = " + (a = b));

System.out.println("a != b = " + (a != b));

System.out.println("a > b = " + (a > b));

System.out.println("a >= b = " + (a >= b));

System.out.println("a < b = " + (a < b));

System.out.println("a <= b = " + (a <= b));

 

//逻辑运算符

boolean b1 = false ;

boolean b2= true ;

System.out.println("******  逻辑运算符 *********");

System.out.println("b1 | b2 = " + (b1 | b2));//true

System.out.println("b1 & b2 = " + (b1 & b2));//false

System.out.println("b1 ^ b2 = " + (b1 ^ b2));//true

System.out.println("!b1 = " + !b1);//true

System.out.println("b1 || b2 = " + (b1 || b2));//true

System.out.println("b1 && b2 = " + (b1 && b2));//false

 

//位运算符

System.out.println("******  逻辑运算符 *********");

a = -7 ; b = 3 ;//1111 1111 - 1111 1111         

System.out.println("a << 2 = " + (a << 2));//-28

System.out.println("a >> 2 = " + (a >> 2));//-2

System.out.println("a >>> 2 = " + (a >>> 2));//1073741822

System.out.println("a | b = " + (a | b));//-5

System.out.println("a & b = " + (a & b));//1

System.out.println("a ^ b = " + (a ^ b));//-6

System.out.println("~a = " + (~a));//6

 

    }

}

 

 

2.byte数到十六进制字符串表现形式程序设计原理和实现方式。

答:

/**

 * 将字节类型数组转换成十六进制的字符串表现形式

 */

class Byte2Hex {

public static void main(String[] args) {

byte b = 108;

System.out.println(convert(b));

}

 

// 转换函数

public static String convert(byte b) {

// 1.取出字节b的低四位的数值

int low = b & 0x0F; // 低四位0-15

 

// 2.取出高四位的值,先将b向右移动4位

int high = (b >> 4) & 0x0F; // 高四位0-15

// 定义字符数组

char[] arr = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A',

'B', 'C', 'D', 'E', 'F' };

// 拼接串

return "" + arr[high] + arr[low];

}

}

 

3.定义函数,计算一位整型数组所有元素的和。

答:

/**

 * 计算所有元素的总和

 */

class SumDemo{

    public static void main(String[] args){

//int result = sum(new int[]{1,2,4,5,6});

System.out.println(result);

    }

 

//计算数组的总和

public static int sum(int[] arr){

int sum = 0 ;

//循环数组

for(int i = 0 ; i < arr.length ; i ++){

//开始累加

sum = sum + arr[i] ;

}

return sum;

}

}

4.数组的拷贝。

答:

class ArrayCopyDemo {

public static void main(String[] args) {

int[] arr1 = {1,6,8,7,4};

int[] arr2 = new int[arr1.length];

copy(arr1, arr2);

out(arr2);

}

 

private static void copy(int[] arr1, int[] arr2) {

for (int i = 0; i < arr1.length; i++) {

arr2[i] = arr1[i];

}

}

private static void out(int[] arr) {

for (int i = 0; i < arr.length; i++) {

System.out.println(arr[i]);

}

}

}

 

5.堆内存默认是1/4,

----------------------------------------

java -Xmx//设置堆内存最大值

-Xms//设置堆内存初始值

className//类名

答:堆内存的默认最大空间是物理内存的1/4,在运行java程序时,可以通过 -Xms初始堆内存的大小,-Xmx设置最大堆内存的大小;


你可能感兴趣的:(java,基础,进制)