java变量定义与运算小练习

(一)变量定义

一、选择

  1. 下列属于合法的 Java 标识符是?(多选)
    A. $value   B. Void   C. class   D. 1abc   E. my value   F.void_class

ABF

  1. 下列哪一个选项不是Java的关键字?
    A. class   B. package   C. Void   D. static

C

  1. 下列可以表示数值型数据的数据类型是?(多选)
    A. byte   B. float   C. boolean   D. long

ABD

  1. 关于数据类型的说法错误的是?
    A. 数据类型分为基本数据类型和引用数据类型   B. 数组属于基本数据类型   C. 类属于引用数据类型   D. int和double属于基本数据类型

B

  1. 下列关于赋值运算符的说法正确的是?(多选)
    A. 使用“=”给变量进行赋值   B. 使用“==”给变量进行赋值   C. "="叫作赋值运算符,将运算符右边的值赋给左边的变量   D. "="叫作赋值运算符,将运算符左边的值赋给右边的变量

AC

  1. 以下对double类型字面值的表示错误的是?
    A. 1.23   B. 1.23d   C. 1.23D   D.1.23f

D

  1. 以下语句哪个是错误的?
    A. double d=12.3d;   B. double d=12.3D;   C. float f=1.23f;   D.float f=1.23;

D

  1. 下面代码运行后的结果为?
    A. A   B. 65   C. A 65   D.A A

D

  1. 以下字符型字面值中,不合法的是?
    A. ‘@’   B. ‘&’   C. “M”   D.‘课’

C

  1. 以下哪两个是合法的字符串字面值?(多选)
    A. “”   B. ‘ab’   C. ‘a’   D."\u0067"

AD

  1. 以下哪两条语句是正确的?(多选)
    A. char ch=65539;   B. int n=5.6f;   C. double d=1.2f;   D. double d=1.23;float =1.23f;

CD

二、编程

  1. 分别定义float、double、int类型的数据,并打印输出。
public class FloatDemo {
	public static void main(String[] args){
		// 定义一个float类型的变量f1,值为98.4 
		float f1 = 98.4F;
		//定义一个float类型的变量f2,将f1的值赋值给f2 
		float f2 = f1;
		//定义一个整型变量n,值为55 
		int n = 55;
		//定义一个double类型的变量d1,值为555.3 
		double d1 =555.3;
		//将n的值赋值给d1 
		d1 = n;
		//输出
		System.out.println(f2);  //98.4
		System.out.println(d1); //55.0
	}
}} 
  1. 定义字符型变量,赋值后输出。
public class CharTest { 
    public static void main(String[] args) {   
	    // 定义字符变量c,并赋值为'S'    
		 char c ='S';
		//输出c的值   
		 System.out.println(c); //S
		//定义字符变量c1,并赋值为78    
		 char c1 =78;
		//输出c1的值    
		 System.out.println(c1);//N
	} 	 
} 
  1. 定义布尔类型和字符串类型的变量,为它们赋值,并打印输出。
public class StringDemo {
	public static void main(String[] args){
		// 定义一个布尔类型的变量flag,赋值为true,并输出 
		boolean flag = true;
		System.out.println(flag); //true
		//定义一个字符串类型的变量str,值为"hello world",并输出 
		String str = "Hello World";
		System.out.println(str); //Hello World
		//定义一个字符串类型的变量str1,值为空串 
		String str1 = "";
		//将str的值赋值给str1,并输出 
		str1 = str;
		System.out.println(str1);//Hello World
	}
}
  1. 定义各种数据类型的变量,为它们赋值,并打印输出。
public class TypeExchang {
	public static void main(String[] args){
		// 定义一个整型变量n,值为98
		int n = 98;
		//定义一个char类型的变量ch,将变量n赋值给ch,然后输出ch的值     
		char ch = (char) n; //char ch =n直接将n赋值出错,需要进行强制转换
		System.out.println(ch); //b
		//定义一个长整型变量var,值为190000000,并输出
		long var = 190000000;
		System.out.println(var);//190000000
		//定义一个double类型的变量d,将变量var的值赋值给d 
		double d = var;
		System.out.println(d);//1.9E8
	}
}
  1. 定义各种数据类型的变量,按要求为它们赋值,并打印输出。
public class test1 {
	public static void main(String[] args){
		// 将一个整型字面值67832赋值给char类型变量c,并将c的值输出
		char c = (char)67832;  
		System.out.println(c); //?
		  //定义一个整型变量n,值为65
		int n =65;
		//定义一个字符型变量c1,赋值为n,并输出c1的值
		char c1 =(char)n;
		System.out.println(c1);//A
		//定义一个长整型变量l,值为987654321
		long l = 987654321L;
		//定义一个整型变量i,赋值为l,并输出i的值 
		int i = (int)l; //要进行强制转换
		System.out.println(i);//987654321
		//定义一个float类型变量f,将变量l的值赋值给f,并输出f的值 
		float f = l;
		System.out.println(f);//9.8765434E8
		//将float的值f,重新赋值给变量l,并输出l的值 
		l =(long)f; //要进行强制转换
		System.out.println(l);//987654336
	}
}

总结:

  • char 只能是单个字符(2个字节大小的Unicode),使用 "单引号(单字符或\u000-\u00ff的ASCII编码集)或是整数(ASCII码值)
  • 要将其他基本数据类型转换成char类型,只能强制转换,最后的结果根据ASCII计算,如果溢出,输出结果为?
  • 强制转换。凡是高精度类型转换成低精度类型都要进行强制转换;转换后可能够造成精度缺失或是溢出的情况

(二)运算

一、选择

  1. 设有如下变量,以下哪些语句编译不出错?
	char c ='c';
	int i =10;
	double d =10;
	long l =1;
	String s ="Hello";
	int a =2;

  A. c=c+i;   B. s+=i;   C. i+=s;  D.c+=s;

B

  1. 若有 a=3,则执行下列语句为a的值为? a+=a*=a;

 A. 3  B.12   C. 9   D.18

B

  1. 下面的运算符中,用于执行除法运算是哪个?

 A. /   B. \   C. %  D.*

A

  1. 下面代码的输出结果为?
	int m=5,n=6;
	int x=(m++)+n;
	int y=(--m)+n;
	System.out.println(x);
	System.out.println(y)

 A. x=11,y=11   B. x=10,y=11   C. x=10,y=12   D.x=12,y=10

A

  1. 执行下列程序段后,m,x,y的值分别是
	int x=2,y=4;
	boolean m;
	m = ++x > y--;

 A. true,2,4   B. false,3,3   C. true,3,3   D.false,2,4

B

二、编程

1.根据任务要求完成本题

public class test1 {
	public static void main(String[] args){
		//将变量m的初值赋值为10,变量n的初值赋值为5
		double m =10,n =5;
		//变量m的值加3,n的值加5
		m+=3;
		n+=5;
		//求m和n的平均值,并将结果存于变量p中 
		double p = (m+n)/2;
		//求m的平方乘以n的平方,并将结果存于变量q中 
		m*=m;
		n*=n;
		double q =13*13*10*10;
		//将p和q的值打印输出
		System.out.println(p);//11.5
		System.out.println(q);//16900.0
	}
}

2.定义三个整型变量a、b、c,他们的初始值分别为4、15、20。对表达式进行运算。

public class test1 {
	public static void main(String[] args){
		//声明三个整型变量a、b、c 
		int a,b,c;
		//分别为a,b,c赋值为4,15,20 
		a=4;
		b=15;
		c=20;
		 //计算(b/a)+c的值 ,并赋值给变量m
		int m =(b/a)+c;
		//计算(c%b)*a-c的值,并赋值给变量n 
		int n =(c%b)*a-c;
		//输出m和n的值
		System.out.println(m);//23    由于设置的abc是整型,所以计算后的值也是整型
		System.out.println(n);//0
	}
}

总结:

  • 不同数值类型数值运算时自动转换成同一种范围大类型进行运算,基本数据类型与字符串类型进行运算时转换成字符串类型
  • 运算时,遵循从左到右的基本运算顺序,如果有运算符,根据运算符的优先规则进行运算
  • ++m 返回计算后的m值
    m++ 返回计算前的m值
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值