day02
类
class:类 一个容器存储 java代码
编译命令
Javac 后面不加文件名是 提示javac后面可以加什么
javac 文件名
java 类名
一个java文件
1.编写.java文件
2.class类名{
public static void main(String[] args){
System.out.print(“xxxxx”)
}
}
3.javac 源文件名称.java 进行编译为.class的字节码文件
4.Java 类的名称
标识符命名
可以由字母、数字、_、$组成,但不能以数字开头
类名由一个或多个单词组成,每个单词首字母大写(pascal)
函数名、变量名由一个或单个单词组成,首单词首字面小写,拼接词首字母大写
变量
字符单位
8bit = 1字节
1024字节 = 1kb
1024kb =1mb
1024mb = 1gb
1024gb = 1tb
内存
保存在内存中的数据是瞬时态的数据
保持在硬盘中的数据是永久态的数据
内存分配给java 1/8的空间
概念:计算机内存中的一块存储空间,是存储数据的基本单元。
变量的定义流程:
声明: 数据类型 变量名; int money; 在内存开辟一块空间
赋值 变量名 = 值; money=100;
应用:System.out.print(money);
public class Demo{public static void main(String[] args){//1.声明变量/*数据类型 变量名int -> 整数money变量的名字*/int money;//2.变量的赋值/*=为赋值符号,不是数学上的判断相等的符号=号右边的赋值给左边*/money = 100;//3.使用变量/*通过变量名使用变量*/System.out.println(money);}
}
注意:Java是强类型语言,变量的类型必须与数据的类型一致
声明变量的3种方式:
-
先声明,再赋值:(常用)
数据类型 变量名;
变量名 = 值;
-
声明并赋值:
(常用)数据类型 变量名 = 值;
-
多个同类型变量的声明与赋值:(了解)
数据类型 变量1,变量2,变量3 = 值3 ;
变量4,变量5 = 值5;
public class Demo2{public static void main(String[] args){/*变量声明的方式1:先声明,再赋值*///声明int money;//赋值money = 100;/*变量的声明方式2:边声明边赋值声明边赋值*///声明变量并赋值18int age = 18;/*变量声明方式3:声明多个变量*///赋值了才能使用int a,b,c,d = 10;//System.out.print(a); 错误可能尚未初始化变量a}
}
数据类型
Java中的变量具有严格的数据类型区分(强类型语言)
在Java语言中,任何一个值,都有其对应类型的变量
Java中的数据类型分为基本数据类型、引用数据类型
基本数据类型分为:整数、小数(浮点数)、布尔、字符
引用数据类型分为:字符串、数组、对象
基本数据类型(整数)
类型 | 字节 | 取值范围(二进制) | 取值范围(十进制) |
---|---|---|---|
byte | 1字节 | -2^7 ~ 2^7-1 | -128 ~127 |
short | 2字节 | -2^15 ~ 2^15-1 | -32768 ~ 32767 |
int | 4字节 | -2^31 ~ 2^31-1 | -2147483648 ~2147483647 |
long | 8字节 | -2^63 ~ 2^63-1 | -9223372036854775808 ~ 9223372036854775807 |
注意:int为整数的默认类型,如需为long类型赋值较大整数时,需在值后面追加“L”;
基本数据类型(小数/浮点数)
类型 | 字节 | 负数取值范围 | 正数取值范围 |
---|---|---|---|
float | 4字节 | +3.4E+38 ~ -1.4 -45 | 1.4E-45 ~ 3.4E+38 |
double | 8字节 | -1.7E+308 ~ -4.9E-324 | 4.9E-324 ~ 1.7E+308 |
浮点型数值采用科学计数法表示:
2E3等价于 2 * 10 ^ 3
3E5等价于 3 * 10 ^ 5
注意:double为浮点数的默认类型,如需float类型赋值时,需要在值的后面追加"F"
/** 基础数据类型 */
public class Demo3{public static void main(String[] args){/*整数类型 4个精确值的存储*///byte -128 ~ 127byte a = -128;System.out.println(a);//short 短整型short b = 30000;System.out.println(b);//int 整型int c = 2140000000;System.out.println(c);//long 长整型long d = 1000000000000L;System.out.println(d);System.out.println("==================");/*小数 2个 浮点数近似值存储*///float /*java默认浮点数的默认类型为double,所以创建float的时候需要加上F标识为float类型*/float e = 12.3F;System.out.println(e);//double 可以赋值整数会自动在后加0转为浮点数double f = 23333;System.out.println(f);double num1 = 1.0;double num2 = 0.9;/*因为浮点数是近似值存储,所以可能导致0.09999999998这个情况处理方式后面课程在学,现在不管*/System.out.println(num1-num2);}
}
基本数据类型(布尔)
类型 | 字节 | 取值范围 | 描述 |
---|---|---|---|
boolean | 1字节 | true/false | 仅可描述"真"或者"假" |
可直接赋值true/false
也可赋值一个结果true/false的表达式
注意:Java中的boolean不能参与算数运算
public class Demo4{public static void main(String[] args){//1.声明//true 真的->对的boolean flag1 = true;//false 假的->错的boolean flag2 = false;System.out.println(flag1);System.out.println(flag2);// < > >=关系运算符// 1 > 2 布尔表达式boolean flag3 = 1 > 2;System.out.println(flag3);System.out.println(100>100);}
}
基本数据类型(字符)
1、ASCII最通用的信息交换标准,为英文字符设定了统一并且唯一的二进制码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hu7Ob8x7-1629808519435)(E:\笔记\自己\第一阶段\图片\ASCII.png)]
稍微记忆:48:0 65:A 90:Z 97: a 122: z
2、Unicode(万国码) 业界标准
为每种语言中的每个字符设定了统一并且唯一的二进制编码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SkgBjFhB-1629808519436)(E:\笔记\自己\第一阶段\图片\Unicode.png)]
3、字符char
类型 | 字符 | 取值范围 | 字符编码 |
---|---|---|---|
char | 2字节 | 0 ~ 65535 | Unicode字符集(万国码) |
Unicode中每个字符都对应一个二进制整数,可以使用多种方式赋值
字符赋值:char c1 = ‘A’(通过’'描述为字符赋值)
整数赋值:char c2 = 65(通过十进制65在字符集中对应的字符赋值)
进制赋值:char c3 = ‘\u0041’(通过十六进制数41在字符集中对应的字符赋值)
public class Demo4{public static void main(String[] args){//1.声明//true 真的->对的boolean flag1 = true;//false 假的->错的boolean flag2 = false;System.out.println(flag1);System.out.println(flag2);// < > >=关系运算符// 1 > 2 布尔表达式boolean flag3 = 1 > 2;System.out.println(flag3);System.out.println(100>100);}
}
day02总结
8个基础数据类型:
从小到大记
整数4个:byte、short、int、long
浮点数2个:float、double
布尔:boolea
字符:char
作业
1 、
使用变量存储以下MP3信息,并打印输出
品牌(brand):爱国者F928
重量(weight):12.4
电池类型(type):内置锂电池
价格(price):499
/*
1、使用变量存储以下MP3信息,并打印输出
品牌(brand):爱国者F928
重量(weight):12.4
电池类型(type):内置锂电池
价格(price):499
*/
public class Mp3{public static void main(String[] args){String brand = "爱国者F928";double weight = 12.4;String type = "内置锂电池";int price = 499;System.out.println("Mp3的品牌为:"+brand+",重量为:"+weight+"克,电池为:"+type+",价格为:"+price);}
}
2 、
计算5个同学的成绩,并输出他们的姓名及成绩,最后输出平均分
张三 50 、李四 60、 王五 78、 赵六 88、 陈七 90
/*
2、计算5个同学的成绩,并输出他们的姓名及成绩,最后输出平均分
张三 50 、李四 60、 王五 78、 赵六 88、 陈七 90
*/
public class Student{public static void main(String[] args){String stu1 = "张三";String stu2 = "李四";String stu3 = "王五";String stu4 = "赵六";String stu5 = "陈七";int results1 = 50;int results2 = 60;int results3 = 78;int results4 = 88;int results5 = 90;int svg = (results1+results2+results3+results4+results5)/5;System.out.println(stu1+"分数为:"+results1);System.out.println(stu2+"分数为:"+results2);System.out.println(stu3+"分数为:"+results3);System.out.println(stu4+"分数为:"+results4);System.out.println(stu5+"分数为:"+results5);System.out.println("平均分为:"+svg);}
}
3 、
计算5个同学的成绩,并输出他们的姓名及成绩,最后输出平均分是否为偶数
张三 50 、李四 60、 王五 78、 赵六 88、 陈七 90
/*
3、计算5个同学的成绩,并输出他们的姓名及成绩,最后输出平均分是否为偶数
张三 50 、李四 60、 王五 78、 赵六 88、 陈七 90*/
public class Student3{public static void main(String[] args){String stu1 = "张三";String stu2 = "李四";String stu3 = "王五";String stu4 = "赵六";String stu5 = "陈七";int results1 = 50;int results2 = 60;int results3 = 78;int results4 = 88;int results5 = 90;int svg = (results1+results2+results3+results4+results5)/5;System.out.println(stu1+"分数为:"+results1);System.out.println(stu2+"分数为:"+results2);System.out.println(stu3+"分数为:"+results3);System.out.println(stu4+"分数为:"+results4);System.out.println(stu5+"分数为:"+results5);System.out.println("平均分为:"+svg);if(svg/2 == 0){System.out.println("平均分为偶数");}else{System.out.println("平均分不为偶数");}}
}
额外题:
/*
使用变量输出自我介绍:姓名、年龄、性别
*/
public class Student{public static void main(String[] args){String name= "包包";int age = 21;char sex = '男';System.out.println("我叫:"+name+",今年:"+age+",性别:"+sex);}
}
/*
2、使用变量存储以下MP3信息,并打印输出
品牌(brand):爱国者F928
重量(weight):12.4
电池类型(type):内置锂电池
价格(price):499
*/
public class Mp3{public static void main(String[] args){String brand = "爱国者F928";double weight = 12.4;String type = "内置锂电池";int price = 499;System.out.println("Mp3的品牌为:"+brand+",重量为:"+weight+"克,电池为:"+type+",价格为:"+price);}
}
import java.util.Scanner;/*
编写计算器 + - * /
*/
public class Calculator{public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输入第一个数:");double num1 = input.nextDouble();System.out.println("请输入第二个数:");double num2 = input.nextDouble();System.out.println("请输入 + - * /");char stu = input.next().charAt(0); if(stu == '+'){System.out.println(num1+num2);}else if (stu == '-'){System.out.println(num1-num2);}else if(stu == '*'){System.out.println(num1*num2);}else if(stu == '/'){System.out.println(num1/num2);}}
}
import java.util.Scanner;
/*
判断用户是否为幸运客户
输入客户的四位会员卡号,计算各位数字之和,单数是幸运客户,双数不是,再以true/flase输出用户是否幸运客户
*/
public class Lucky{public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输入四位数卡号:");int card = input.nextInt();if(1000 < card && card< 9999){int qian = card/1000; int bai = card/100%10;int shi = card/10%10;int ge = card%10;int sum = qian+bai+ge+shi;if( sum%2 != 0 ){System.out.println("恭喜您,成为我们的幸运客户");}else{System.out.println("可惜,您不是我们的幸运客户");}}else{System.out.println("输入错误,卡号为四位数");}}
}