12-21笔记与作业

本章内容:变量与数据类型

    1、掌握标识符和关键字

    2、掌握变量和常量的使用

    3、JAVA中的数据类型

    4、掌握数据类型转换

 

1、变量:一个数据存储空间的表示

  变量值通常为常量

 

2、数据类型的范围:

  byte  8位     -2的7次方~2的7次方-1        -128~+127

  short   16位   -2的15次方~2的15次方-1

  int     32位   -2的31次方~2的31次方-1

  long  64位   -2的63次方~2的63次方-1

  float  32位

  double   64位

 

3、变量的使用:1)、声明变量

         2)、赋值

           3)、使用

  注意:1和2两步骤可合并使用

  变量声明使用示例:

import java.util.Scanner;

public class Details {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		String name = "小明";//姓名
		int age = 25;//年龄
		int workage = 3;//工龄
		int number = 5;//项目数
		String technology = "java";//技术方向
		String interest = "篮球";//爱好
		System.out.println("这个同学的姓名是:"+name);
		System.out.println("年龄是:"+age);
		System.out.println("工作了"+workage+"年");
		System.out.println("做了"+number+"个项目");
		System.out.println("技术方向是:"+technology);
		System.out.println("兴趣爱好是:"+interest);
	}
}

输出结果:

 

4、常量:

  1)、常量只能赋一个值

  2)、声明时在前面加final

  3)、常量名全部用大写

  4)、不同字符使用下旬线分隔

 

5、类型转换要求:

  1)、两种类型要兼容

    如:数值类型(整型和浮点型)互相兼容

  2)、目标类型大于源类型

    如:double与int

  数据类型转换分为自动转换与强制转换,如

int a = 12; double b = 11.3; int c = a - (int)b;//或者int c = int(a - b); 结果为1;

 

 

此为强行把b强制转成int类型再运算,为强制转换

double a = 10;

此处a为double浮点类型,因此右边10自动生成浮点数类型10.0,因些输出a结果为10.0,为自动转换。

 

2)、在计算中每一个字符都有对应ASCII码,因此把一个字符赋值给int类型是可行的,反过来也是一样可行,如下图:

  a、把字符赋给int类型

public class Test {
	public static void main(String[] args) {
		int a = '男';
		System.out.println(a);
	}
}

结果会显示相应数值为:

   b、把数值赋给char类型

public class Test {
	public static void main(String[] args) {
		char a = 22232;
		System.out.println(a);
	}
}

  结果会显示相应的字符或乱码

 

 

6、算术运算符

  重点:++或--在前表示立即执行,++或--在后表示当前不执行,过后执行

  示例:

public class Test {
	public static void main(String[] args) {
		int a = 1; 
		int b = a++ + ++a + a++ + ++a + ++a + a++; 
		System.out.println(b);
	}
}

  注意:a++虽然先进行赋值运算,但表达式过后扔有进行自加运算,因此在第二个++a之前a值为2;第二行也可看成

int b = (a++) + (++a) + (a++) + (++a) + (++a) + (a++); 

  开始进a=1,

    第一个++在后,后执行,因此为1,运算过后a执行++,a值为2,

    第二个++在前,先执行,因此为3,a值为3;

    第三个++在后,后执行,因此为3,运算过后a执行++,a值为4;

    第四个++在前,先执行,因此为5,a值为5;

    第五个++在前,先执行,因此为6,a值为6;

    第六个++在后,后执行,因此为6,运算过后a执行++,a值为7;

    因此最后结果为24。

 

作业:

  1、输入一个五位数,输出每位数的数值,并求和。

import java.util.Scanner;
/**
 * 输出各位数的数值并求和
 * @author Administrator
 * 2018-12-21
 */
public class WeiShu {
	public static void main(String[] args) {
		Scanner cc = new Scanner(System.in);
		System.out.println("请输入五位数:");
		int num = cc.nextInt();
		
		int wanwei = num/10000;//五位数除以10000,商刚好为万位数字
		int qianwei = num/1000%10;//先把五位数除以1000,商为万位和千位组成的数,再对其除以10求余,即可得千位数字
		int baiwei = num/100%10;//先把五位数除以100,商为万位、千位和百位组成的数,再对其除以10求余,即可得百位数字
		int shiwei = num/10%10;//先把五位数除以1000,商为万位、千位、百位和十位组成的数,再对其除以10求余,即可得十位数字
		int gewei = num%10;//把五位数除以10求余,余数就为个位数
		
		System.out.println("万位数是:"+wanwei);
		System.out.println("千位数是:"+qianwei);
		System.out.println("百位数是:"+baiwei);
		System.out.println("十位数是:"+shiwei);
		System.out.println("个位数是:"+gewei);
		
		int sum = wanwei + qianwei + baiwei + shiwei + gewei;
		System.out.println("五位数求和为:"+sum);
	}
}

  结果为:

 

  2、商场为员工提供了基本工资、物价津贴和房租津贴。其中,物价津贴为基本工资的40%,房租津贴为基本工资的25%,要求:从控制台输入基本工资,并计算输出实领工资。

import java.util.Scanner;

public class GongZi {
	public static void main(String[] args) {
		int jibengz;
		System.out.println("请输入基本工资:");
		Scanner input = new Scanner(System.in);//输入基本工资
		jibengz = input.nextInt();
		System.out.println("基本工资是:"+jibengz);//输出基本工资
		double wujia = jibengz*0.4;//算物价津贴
		double fangwu = jibengz*0.25;//计算住房津贴
		double gongzi = jibengz+wujia+fangwu;
		System.out.println("物价津贴是:"+wujia);
		System.out.println("住房津贴是:"+fangwu);
		System.out.println("实际工资是:"+gongzi);
		
	}
}

  运行结果:

 

 

 

 

 

 

 

 

 

 

 

posted on 2018-12-21 19:30  陈小锦  阅读(138)  评论(0)    收藏  举报