2020 07 23 2.数据类型

2.1.什么是注释?注释的作用是什么?注释的分类以及具体的表现形式?
注释:写程序时对自己写的代码进行解释与说明
作用:1.可以为之后自己再次查看提供帮助,可以知道代码的含义和功能 2.可以让别人也能看懂自己的程序写的是什么 3. 具有隐藏代码的作用(被注释的代码不会被实行,可以给我们在处理异常和测试程序提供便利,不用删除有用的代码)
注释的分类:1.单行注释 一次只能注释一行(// 注释内容)通常出现在被注释代码的上面或者后面
2. 多行注释 可以注释多行内容
( /*
注释内容1
注释内容2
注释内容3
可以包含单行注释,不能包含多行注释的
/ )
通常出现在被注释代码的上面
3. 文档注释 也是一中多行注释,只是它可以通过javadoc命令转换成独立于程序以外的一个注释文件
(/
*
注释内容1
注释内容2
注释内容3
可以包含单行注释,不能包含多行注释的
*/)
通常出现在被注释代码的上面
2.2.标识符是什么?标识符的具体规则?
标识符:在编写java代码时给java中的元素命名的字符串
标识符的具体规则:1.可以用数字,字母,_,$组成,但是不能以数字开头
(例如:Hello_world$110 [错误]100_Hello)
2.不能有空格
3.区分大小写
4.不能是关键字
Java中各元素的基本命名规范:
类—符合标识符规则,类名的首字母要大写 例如:Hello HelloWorld
方法—符合标识符规则,方法的名称首字母小写,从第二个单词开始首字母大写 例如:get getName getMyName
变量—符合标识符规则,变量的名称所有字母小写,可以使用__分割
例如:name my_name my_name_number
2.3.什么是关键字?Java中常用的关键字?
关键字:java中为一些单词赋予了特殊含义,这些被赋予特殊含义的单词就是关键字(标识符不能用关键字)
下图为Java中的关键字:
在这里插入图片描述

2.4.什么是变量?变量的作用?变量的组成?
变量:在程序运行的时随时都可能发生变化的数据就是变量。
变量的作用:保存具体的数据值,限制了数据值在内存中的位置和大小。
变量的组成:1.数据类型—决定内存空间
2.变量名称—自定义的,只要符合标识符的规则
3.初始值—默认值
4.作用域—有效范围
变量定义格式:
数据类型 变量名称; //定义变量
例如:int a;
变量的赋值:
变量名称 = 数据值;
例如:a = 100;
变量定义+变量赋值:
数据类型 变量名称 = 数据值;
例如:int a=100;
2.5.Java中的基本数据类型有几种?如何表示,取值范围,注意事项?
java中的数据类型有:4大类8大种
1.整数类
1.1 byte 字节型 1字节 8位2进制 -128–127 (-27)—(27-1) 注意:默认值是 0,超过取值范围就会出错。

1.2 short 短整型 2字节 16位2进制 -2的15次方–2的15次方-1 注意:默认值是 0,超过取值范围就会出错。

1.3 int 整型 4个字节 32位2进制 -2的31次方----2的31次方-1
注意:默认值是 0,超过取值范围就会出错。

1.4 long 长整型 8个字节 64位2进制 -2的63次方----2的63次方-1 注意:在赋值的时候需要添加一个“l””L”后缀,否则以int型对待默认值是 0,超过取值范围就会出错。 如果保存比长整型更大的数据是采用
科学计数法【9.2233719446210545171150474578945e+42】。

2.浮点类 小数
2.1float – 单精度浮点型 4个字节 精度7–8位的有效数字
注意: 在赋值的时候需要“f”/”F”作为后缀,否则以双精度浮点型对待

2.2double – 双精度浮点型 8个字节 精度15–16位的有效数字
注意:在赋值的时候可以有“d”/”d”作为后缀,也可以不同加,不带后缀的小数都是double 。

3.字符类 表示单个字符
char – 字符型 2个字节 【0–65535】 注意:单个字符需要单引号包围

4.布尔类
boolean – 布尔 1个字节 true/false
2.6.基本数据类型之间的转换?注意事项?
boolean布尔型不参与基本数据类型的转换
7种数据类型按精度排序:
byte < short < char < int < long < float < double
1.将低精度的数据类型转成高精度的数据类型----【隐式数据类型转换】 注意;因为在执行这个隐式数据类型转换的过程中,我们是不用修改程序代码的,直接赋值完成就可以了,java系统会自动完成数据类型转换。
2.2.将高精度的数据类型转成低精度的数据类型----【显式数据类型转换/强制类型转换】
注意:显式数据类型转换又叫强制类型转换,那么就是说我们在进行数据类型转换的时候,需要修改程序代码,以体现出此处进行了数据类型转换。
格式:
低精度的数据类型 变量名称= (低精度的数据类型)高精度数据类型的变量/数据值;
2.7.什么是数组?如何定义?如何创建?如何赋值?如何取值?有那些属性?
数组:同一数据类型的一组数据按照顺序排列的复合数据类型
定义数组: 格式: 1. 数据类型 数组名称[];
2.数据类型 []数组名称;
例如:
//定义一个数组
//1. 数据类型 数组名称[];
int arr1[];
//2.数据类型 []数组名称;
char []arr2;
创建数组:【为数组开辟保存数据的内存空间】
格式: 数组名称 = new 数据类型[空间大小];
例如:
arr1=new int[4];
arr2=new char[5];
可以将定义数组与创建数组合并成一句话表示:
1. 数据类型 数组名称[] = new 数据类型[空间大小];
2.数据类型 []数组名称 = new 数据类型[空间大小];
例如:

double arr3[]=new double[4];
      byte  []arr4=new byte[5];


数组赋值:
1.逐个赋值 【需要数组下标,从0开始】
格式:数组名称[下标] = 数据值/变量;
超过数组空间大小以后会出错“java.lang.ArrayIndexOutOfBoundsException”
例如:

arr2[0]='h';      
      arr2[1]='e'; 
      arr2[2]='l'; 
      arr2[3]='l'; 
      arr2[4]='o'; 
      //超过数组空间大小以后会出错
      //java.lang.ArrayIndexOutOfBoundsException
      //arr2[5]='w';

2.直接赋值【就是在创建数组的时候赋值】

 //char  chararray[]={'h','e','l','l','o'}; 
      //char  []chararray={'h','e','l','l','o'}; 
      //char  []chararray=new char[]{'h','e','l','l','o'};
      //char  chararray[]={'h','e','l','l','o'}; 
      //char  chararray[]=new char[]{'h','e','l','l','o'};
      //char  []chararray=new char[]{'h','e','l','l','o'};
      //char  []chararray=new char[5]{'h','e','l','l','o'}; //错误

属性:length属性 – 得到数组空间大小
例如:

 `char  chararray[]={'h','e','l','l','o'}; 
System.out.println("length==="+chararray.length);
int  intarray[]=new int[4];
intarray[0]=100;
intarray[1]=200;
System.out.println("length==="+intarray.length);`

2.8.认识Arrays类【数组的帮助类】?
Arrays类:针对数组进行操作的工具类
1: public static String toString(int[ ] a):把数组转成字符串。
2: public static void sort(int[ ] a):对数组进行排序(底层是快排!)
3: public static int binarySearch(int[ ] a,int key):二分查找,前提是数组有序 。

package cn.itcast_01;
 
import java.util.Arrays;
 
public class ArraysDemo {
	public static void main(String[] args) {
		// 定义一个数组
		int[] arr = { 24, 69, 80, 57, 13 };
 
		// public static String toString(int[] a)---- 把数组转成字符串
		System.out.println("排序前:" + Arrays.toString(arr));
 
		// public static void sort(int[] a) ---- 对数组进行排序
		Arrays.sort(arr);
		System.out.println("排序后:" + Arrays.toString(arr));
 
		// [13, 24, 57, 69, 80]
		// public static int binarySearch(int[] a,int key) ---- 二分查找
		System.out.println("binarySearch:" + Arrays.binarySearch(arr, 57)); 	//2
		System.out.println("binarySearch:" + Arrays.binarySearch(arr, 577));	//-6
	}
}

2.9.基本数据类型与复合数据类型的区别?
在这里插入图片描述
基本数据类型的内存分配:
int num; //定义一个整型变量
num=100; //为这个整型变量赋值
int num=100; //定义+赋值
在这里插入图片描述

复合数据类型的内存分配【数组】
char arr[]; //定义一个数组
arr=new char[5]; //创建数组
char arr[]=new char[5]; //定义+创建
arr[0]=’h’; //赋值
arr[1]=’e’;
arr[2]=’l’;
arr[3]=’l’;
arr[4]=’o’;
在这里插入图片描述

基本数据类型的运算速度比复合数据类型的运算速度快。
2.10.Scanner类的用法?
java的Scanner类是java.util包下的一个常用类,用于扫描输入文本。
创建Scanner类的对象
Scanner input; //定义了一个Scanner类的变量; int num;
input = new Scanner(System.in); //创建Scanner类的对象。 num=100;
Scanner input=new Scanner(System.in); //定义+赋值 int num=100;
System.in—表示java中的一个输入流,代表标准的键盘输入
7.Scanner类的输入方法
String next()—接收字符串数据
String nextLine()—接收一行字符串数据
byte nextByte()----接收字节数据
short nextShort()----接收端整型数据
int nextInt()----接收整型数据
long nextLong()----接收长整型数据
float nextFloat()----接收单精度浮点型数据
double nextDouble()----接收双精度浮点型数据
boolean nextBoolean()----接收布尔型数据
例如: 姓名=张三疯,年龄=120,地址=武当山,身高=168.9

import  java.util.Scanner;
public  class  ScannerDemo{
	public static void main(String args[]){
                    //创建Scanner类的对象
	   				Scanner  read=new Scanner(System.in);
                   System.out.println("请输入姓名:");
                   //对象调用方法,完成某一个功能。
                   String name=read.next(); //接收字符串数据
	   				System.out.println("请输入年龄:");
                   int age=read.nextInt(); //接收整型数据
                   System.out.println("请输入地址:");
                   String  address=read.next(); //接收字符串数据
                   System.out.println("请输入身高:");
                   double height=read.nextDouble(); //接收双精度浮点型数据
                   System.out.println("姓名="+name+",年龄="+age+",地址="+address+",身高="+height);
	}
}```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值