第二章 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();
}    
原创文章 11 获赞 8 访问量 5584

猜你喜欢

转载自blog.csdn.net/weixin_43292923/article/details/105971518