第二章 Java語言的基本語法使用

第二章 基本語法

1.標識符的命名規則&規範有哪些?

規則:
由26個英文字母大小寫,0-9,_或$組成
數字不可以開頭
不可以使用關鍵字和保留字,但能包含關鍵字和保留字
Java中嚴格區分大小寫,長度無限制
標識符不能包含空格

規範:
包名:多個單詞組成時所有字母小寫:xxxyyyzzz
類名、接口名:多單詞組成時,所有單詞的首字母小寫,第二個單詞開始每個單詞首字母大寫:xxxYyyZzz
變量名:xxxYyyZzz
常量名:XXX_YYY_ZZZ

2. Java變量按照數據類型怎麼劃分?並指出Java的基本數據類型有哪8種,並指出各自佔用的內存空間大小?

按數據類型劃分:
    基本數據類型:
    	數值型:byte(8bit)、short(2字節)、int(4字節)、long(8字節)、
    	float(4字節)double(8字節)
    	字符型:char(1字符=2字節)
    	布爾型:boolean
    引用數據類型:
    	類(class)、數組([])、接口(interface)

3.說明基本數據類型變量之間自動類型提升的運算規則。

結論:當容量小的數據類型的變量與容量大的數據類型的變量做運算時,結果自動提升爲容量大的數據類型。

bytecharshort --> int --> long --> float --> double 
特別的:當bytecharshort三種類型的變量做運算時,結果爲int

4.說明基本數據類型變量之間強制類型轉換的使用規則和強轉可能出現的問題。

1.需要使用強轉符:()
2.注意點:強制類型轉換,可能導致精度損失。

5. &和&&的異同

相同點:
    1.&&& 的運算結構相同
    2.當符號左邊是true時,二者都會執行符號右邊的運算
不同點:當符號左邊是false時,&會繼續執行符號右邊的運算。&&不再執行
開發中:推薦使用&&

6.程序輸出

class OperatorTest {
	public static void main(String[] args) {
		boolean x = true;
		boolean y = false;
		short z = 40;
		if ((z++ == 40) && (y = true)) {
			z++; 
		}
        // z = 42
		if ((x = false) || (++z == 43)) {
			z++;
		}
		System.out.println("z = " + z); // 44
	}
}
// z = 44

7. 定義三個int型變量並賦值,使用三元運算符或者if-else獲取這三個數中的較大數的實現.

public class Max{
    public static void main(String[] args){
        int num1 = 10;
        int num2 = 20;
        int num3 = 30;
        int max;
        if(num1 >= num2 && num1 >= num3){
            max = num1;
        }else if(num2 >= num1 && num2 >= num3){
            max = num2;
        }else{
            max = num3;
        }
        max = (num1 >= num2) ? num1 : num2;
        max = (max >= num3) ? max : num3;
        
        System.out.println("三個數中的最大值爲:" + max);
    }
}

8. 編寫程序,聲明2個double型變量並賦值。判斷第一個數大於10.0,且第2個數小於20.0,打印兩數之和。否則,打印兩數的乘積。

double d1 = 11.0;
double d2 = 18.0;
if(d1 > 10.0 && d2 < 20.0){
    System.out.println(d1 + d2);
}else{
    System.out.println(d1 * d2);
}

9.交換兩個變量值的代碼的實現

String s1 = "北京";
String s2 = "南京";

String temp = s1;
s1 = s2;
s2 = temp;

10. switch後面使用的表達式可以是哪些數據類型的。

byteshortcharint、枚舉類型變量、String類型

11. 使用switch語句改寫下列if語句。

 int a = 3;
 	 int x = 100;
 	 if(a==1)
		x+=5;
 	 else if(a==2)
		x+=10;
 	 else if(a==3)
		x+=16;
 	 else		
		x+=34;
=====================================
int a = 3;
int x = 100;
switch(a){
    case 1:
        x += 5;
        break;
     case 2:
        x += 10;
        break;
      case 3:
        x += 16;
        break;
     default:
        x += 34;
}

12. 如何從控制檯獲取String和int型的變量,並輸出?使用代碼實現。

import java.util.Scanner;

Scanner scan = new Scanner(System.in);

String info = scan.next();
int id = scan.nextInt();

13. 使用for循環遍歷100以內的奇數,並計算所有的奇數的和並輸出。

int sum = 0;
for(int = 1;i <= 100; i++){
    for(i % 2= 0){
        System.out.println(i);
        sum += i;
    }
}
System.out.println(sum);

14. 循環結構是如何最後退出循環的,有哪些不同的情況請說明。

方式一:當循環條件是false時
方式二:在循環體中,執行break

15.指出如下程序輸出的結果.

label: for (int i = 1; i <= 4; i++) {
			for (int j = 1; j <= 10; j++) {
				if (j % 4 == 0) {
					continue label; // 返回到外層for循環
				}
				System.out.print(j);
			}
			System.out.println();
}
正確結果:123123123123

16. 一個數如果恰好等於它的因子之和,這個數就稱爲"完數"。例如6=1+2+3。編程 找出1000以內的所有完數。(因子:除去這個數本身的其它約數)

for(int = 1;i <= 1000; i++){
    int factor = 0;
    for(int j = 1;j < i/2 ; j++){
        if(i % j == 0){
            factor += j;
        }
    }
    if(i == factor){
        System.out.println(i)
    }
}

17. 從控制檯輸出如下結構

******
*****
****	
***	
**	
*

for(int i = 1;i <= 6;i++){
    for(int j = 1;j<7-i;j++){
        System.out.print("*");
    }
    System.out.println();
}    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章