2.数据类型
2.1.什么是注释?注释的作用是什么?注释的分类以及具体的表现形式?
答:注释:解释说明自己编写的java代码是什么意思。
注释的作用:
1.为了以后能够知道自己当时所写的java代码的功能或者含义。
2.方便别人能够看懂自己的java程序,从开始学习时,我们就要养成书写注释的习惯。注释的内容是不会被执行的,隐藏的作用:可以帮助我们调试自己的程序。
注释的分类及表现形式:
1.单行注释:一次只能注释一行 ,通常出现在被注释代码的上面或者后面 表现形式://
2.多行注释:可以注释多行内容。表现形式:/**/
2.2.标识符是什么?标识符的具体规则?
答: 标识符----编写java代码时给java中的元素起名字的字符串。
规则:
1.可以用字母,数字,_,$,组成,数字时不能开头的。
例: Hello_world$110 [错误]100_Hello
2.不能有空格
3.区分大小写 例:Hello hello
4.不能是关键字
2.3.什么是关键字?java中常见的关键字?
答:关键字----java中为了给一些单词赋予特殊意义,这些赋予特殊意义的单词就是关键字。【标识符不能用关键字】
常用的关键字:java中的关键字大概有50个左右。
2.4.什么是变量?变量的作用?变量的组成?
答:变量----程序运行过程中随时变化的数据。
变量作用----保存数据,限制了数据在内存中的位置和大小。
变量的组成----1.数据类型
2.变量的名称
3.初始值---默认值
4.作用域---有效范围
例:
public class BianLiangDemo1{
public static void main(String args[]){
//变量定义格式: 数据类型 变量名称;
//定义一个整数类型的变量叫num1
//1.数据类型--int
//2.变量名--num1
//3.初始值--0
//4.作用域--main方法中
int num1;
//变量的赋值: 变量名称 = 数据值;
num1=100;
//变量定义+变量赋值: 数据类型 变量名称 = 数据值;
int num2=200;
//可以一次性声明/定义多个变量
int test1,test2,test3;
//赋值
test1=1001;
test2=2002;
test3=2020;
//可以一次性声明/定义多个变量
int my1=110,my2=120,my3=119;
System.out.println(num1);
System.out.println(num2);
System.out.println(test1);
System.out.println(test2);
System.out.println(test3);
System.out.println(my1);
System.out.println(my2);
System.out.println(my3);
}
}
2.5.java中的基本数据类型有几种?如何表示,取值范围,注意事项?
答: Java中的基本数据类型有四大类八种:
1.整数型
1.1字节型:byte--1个字节【8位2进制】,取值范围【-128-127】(-2^7)--- (2^7-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),默认值是0.
2.浮点型---小数
2.1单精度浮点型:float---4个字节 精度7-8位有效数字。注意:在赋值时需要用“f”/“F”结尾,否则已双精度浮点型对待。
2.2上精度浮点型:double---8个字节 精度15-16位有效数字。注意:在赋值时可以已“D"/"d"结尾,也可以不用加,不带后缀的小数都时double。
3.字符类---表示单个字符
3.1字符型:char----2个字节,取自范围【0-65535】,单个字符需要单引号包围
转义字符---特殊标识特殊符号
4.布尔类
4.1布尔类:boolean---1个字节,取值【true/false】
2.6. 基本数据类型之间的转换?注意事项?
答:注意:基本数据类型之间的转换中boolean是不参与转换的,剩下的7中数据类型精度排序【数据转换一次为基础】
byte short char int long float double
1.基本数据类型的转换分为两种情况:
低精度转高精度:【隐式数据类型转换】
注意:因为在执行这个隐式数据类型转换的过程中,我们是不用修改程序代码的,直接赋值完成就可以了,java系统会自动完成数据类型转换。
例如:
public class YinShiDemo{
public static void main(String args[]){
byte bytevalue=100; //100---byte---1个字节
int intvalue=bytevalue; //隐式数据类型转换
System.out.println("intvalue=="+intvalue); // intvalue--100--int---4个字节
long longvalue=100L; // 100L--long--8字节
float floatvalue=longvalue;//隐式数据类型转换
System.out.println("floatvalue=="+floatvalue); //100.0--float--4个字节
}
}
高精度转低精度:【显式数据类型转换/强制类型转换】
注意:显式数据类型转换又叫强制类型转换,那么就是说我们在进行数据类型转换的时候,需要修改程序代码,以体现出此处进行了数据类型转换。
格式:低精度的数据类型 变量名称= (低精度的数据类型)高精度数据类型的变量/数据值;
例如:
public class XianShiDemo{
public static void main(String args[]){
int intvalue=100; //100--int--4个字节
byte bytevalue=(byte)intvalue; //显式数据类型转换
System.out.println("bytevalue=="+bytevalue); //100--byte--1个字节
double doublevalue=12.5;
byte bytevalue1=(byte)doublevalue;
System.out.println("bytevalue1=="+bytevalue1);
}
}
2.7什么是数组?如何定义?如何创建?如何赋值?如何取值?有那些属性?
答:java中的数据类型分为基本数据类型和复合数据类型。
数组----同一种数据类型按照顺序排列的复合数据类型。
数组定义:
格式:1. 数据类型 数组名称[ ]; int arr[];
2.数据类型 [ ]数组名称; int []arr1;
创建数组【为数组创建保存数据的内存空间】
格式: 数组名称 = new 数据类型[空间大小];
例如:arr=new int(4);
arr1=new char(5);
数组的定义+数组的创建:
格式: 1. 数据类型 数组名称[ ]= new 数据类型[空间大小];
2.数据类型 [ ]数组名称= new 数据类型[空间大小];
例如:1. double arr1[ ] = new double[4];
2. byte [ ]arr2 = new byte[5];
数组赋值:
1.逐个赋值:
arr2[0]='h';
arr2[1]='e';
arr2[2]='l';
arr2[3]='l';
arr2[4]='o';
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'};
取值:根据下标取值
格式:数组名称[下标];
System.out.println("取值==="+intarray[3]);
遍历数组:【循环语句】
总结:
1.”[]”数组的标志
2.当数组名称后面有一个“[]”,这个就是一维数组,当数组名称后面有两个“[]”,这个就是二维数组,超过两个“[]”,统一叫多维数组。
以上都是一维数组内容。下面简单介绍二维数组构造。
定义二维数组 : 数据类型 数组名称[][]/数据类型 [][]数组名称;
创建二维数组 : 数组名称=new 数据类型[空间大小][每一个空间中的元素个数]
二维数组可以用来保存表格数据;
例如:
String student_table[][]={{"1001","zhangsan","23","西安"}, {"1002","lisi","24","上海"}};
System.out.println(student_table[1][1]);
2.8.认识Arrays类【数组的帮助类】?
Arrays类是提供对数组进行排序,查询和修改等操作方法的工具类(帮助类)
(1) fill 填充数组
int []arr = new int[5];
Arrays.fill(arr, 2);
output(arr); --------------给所有的数组空间都填充2
(2) sotr 数组排序
int []arr = {3,2,1,5,4};
Arrays.sort(arr,0,4);
output(arr); --------------给数组中的元素排序
(3) equals 比较数组元素是否相同
int []arr1 = {1,2,3};
int []arr2 = {1,2,3};
System.out.println(Arrays.equals(arr1,arr2));----------true
2.9.基本数据类型与复合数据类型的区别?
答:
基本数据类型的运算速度比复合数据类型的运算速度快。
2.10.Scanner类的用法?
答:
创建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中的一个输入流,代表标准的键盘输入
Scanner类的输入方法
String next()---接收字符串数据
String nextLine()---接收一行字符串数据
byte nextByte()----接收字节数据
short nextShort()----接收端整型数据
int nextInt()----接收整型数据
long nextLong()----接收长整型数据
float nextFloat()----接收单精度浮点型数据
double nextDouble()----接收双精度浮点型数据
boolean nextBoolean()----接收布尔型数据
例如:
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);
}
}