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設置最大堆內存的大小;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章